5 <title>Source: rpc.js
</title>
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>
12 <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
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">
20 var config = {
"monospaceLinks":true,
"cleverLinks":true,
"default":{
"outputSourceFiles":true}};
27 <div id=
"wrap" class=
"clearfix">
29 <div class=
"navigation">
30 <h3 class=
"applicationName"><a href=
"index.html"></a></h3>
33 <input id=
"search" type=
"text" class=
"form-control input-sm" placeholder=
"Search Documentations">
37 <li class=
"item" data-name=
"LuCI">
39 <a href=
"LuCI.html">LuCI
</a>
42 <ul class=
"members itemMembers">
44 <span class=
"subtitle">Members
</span>
46 <li data-name=
"LuCI#Class"><a href=
"LuCI.html#Class">Class
</a></li>
48 <li data-name=
"LuCI#dom"><a href=
"LuCI.html#dom">dom
</a></li>
50 <li data-name=
"LuCI#env"><a href=
"LuCI.html#env">env
</a></li>
52 <li data-name=
"LuCI#Poll"><a href=
"LuCI.html#Poll">Poll
</a></li>
54 <li data-name=
"LuCI#Request"><a href=
"LuCI.html#Request">Request
</a></li>
56 <li data-name=
"LuCI#view"><a href=
"LuCI.html#view">view
</a></li>
59 <ul class=
"typedefs itemMembers">
61 <span class=
"subtitle">Typedefs
</span>
63 <li data-name=
"LuCI.requestCallbackFn"><a href=
"LuCI.html#.requestCallbackFn">requestCallbackFn
</a></li>
66 <ul class=
"typedefs itemMembers">
69 <ul class=
"methods itemMembers">
71 <span class=
"subtitle">Methods
</span>
73 <li data-name=
"LuCI#bind"><a href=
"LuCI.html#bind">bind
</a></li>
75 <li data-name=
"LuCI#error"><a href=
"LuCI.html#error">error
</a></li>
77 <li data-name=
"LuCI#get"><a href=
"LuCI.html#get">get
</a></li>
79 <li data-name=
"LuCI#halt"><a href=
"LuCI.html#halt">halt
</a></li>
81 <li data-name=
"LuCI#hasSystemFeature"><a href=
"LuCI.html#hasSystemFeature">hasSystemFeature
</a></li>
83 <li data-name=
"LuCI#isObject"><a href=
"LuCI.html#isObject">isObject
</a></li>
85 <li data-name=
"LuCI#location"><a href=
"LuCI.html#location">location
</a></li>
87 <li data-name=
"LuCI#media"><a href=
"LuCI.html#media">media
</a></li>
89 <li data-name=
"LuCI#path"><a href=
"LuCI.html#path">path
</a></li>
91 <li data-name=
"LuCI#poll"><a href=
"LuCI.html#poll">poll
</a></li>
93 <li data-name=
"LuCI#post"><a href=
"LuCI.html#post">post
</a></li>
95 <li data-name=
"LuCI#raise"><a href=
"LuCI.html#raise">raise
</a></li>
97 <li data-name=
"LuCI#require"><a href=
"LuCI.html#require">require
</a></li>
99 <li data-name=
"LuCI#resolveDefault"><a href=
"LuCI.html#resolveDefault">resolveDefault
</a></li>
101 <li data-name=
"LuCI#resource"><a href=
"LuCI.html#resource">resource
</a></li>
103 <li data-name=
"LuCI#run"><a href=
"LuCI.html#run">run
</a></li>
105 <li data-name=
"LuCI#sortedKeys"><a href=
"LuCI.html#sortedKeys">sortedKeys
</a></li>
107 <li data-name=
"LuCI#stop"><a href=
"LuCI.html#stop">stop
</a></li>
109 <li data-name=
"LuCI#toArray"><a href=
"LuCI.html#toArray">toArray
</a></li>
111 <li data-name=
"LuCI#url"><a href=
"LuCI.html#url">url
</a></li>
114 <ul class=
"events itemMembers">
119 <li class=
"item" data-name=
"LuCI.baseclass">
121 <a href=
"LuCI.baseclass.html">LuCI.baseclass
</a>
124 <ul class=
"members itemMembers">
127 <ul class=
"typedefs itemMembers">
130 <ul class=
"typedefs itemMembers">
133 <ul class=
"methods itemMembers">
135 <span class=
"subtitle">Methods
</span>
137 <li data-name=
"LuCI.baseclass.extend"><a href=
"LuCI.baseclass.html#.extend">extend
</a></li>
139 <li data-name=
"LuCI.baseclass.instantiate"><a href=
"LuCI.baseclass.html#.instantiate">instantiate
</a></li>
141 <li data-name=
"LuCI.baseclass.isSubclass"><a href=
"LuCI.baseclass.html#.isSubclass">isSubclass
</a></li>
143 <li data-name=
"LuCI.baseclass.singleton"><a href=
"LuCI.baseclass.html#.singleton">singleton
</a></li>
145 <li data-name=
"LuCI.baseclass#super"><a href=
"LuCI.baseclass.html#super">super
</a></li>
147 <li data-name=
"LuCI.baseclass#varargs"><a href=
"LuCI.baseclass.html#varargs">varargs
</a></li>
150 <ul class=
"events itemMembers">
155 <li class=
"item" data-name=
"LuCI.dom">
157 <a href=
"LuCI.dom.html">LuCI.dom
</a>
160 <ul class=
"members itemMembers">
163 <ul class=
"typedefs itemMembers">
165 <span class=
"subtitle">Typedefs
</span>
167 <li data-name=
"LuCI.dom~ignoreCallbackFn"><a href=
"LuCI.dom.html#~ignoreCallbackFn">ignoreCallbackFn
</a></li>
170 <ul class=
"typedefs itemMembers">
173 <ul class=
"methods itemMembers">
175 <span class=
"subtitle">Methods
</span>
177 <li data-name=
"LuCI.dom#append"><a href=
"LuCI.dom.html#append">append
</a></li>
179 <li data-name=
"LuCI.dom#attr"><a href=
"LuCI.dom.html#attr">attr
</a></li>
181 <li data-name=
"LuCI.dom#bindClassInstance"><a href=
"LuCI.dom.html#bindClassInstance">bindClassInstance
</a></li>
183 <li data-name=
"LuCI.dom#callClassMethod"><a href=
"LuCI.dom.html#callClassMethod">callClassMethod
</a></li>
185 <li data-name=
"LuCI.dom#content"><a href=
"LuCI.dom.html#content">content
</a></li>
187 <li data-name=
"LuCI.dom#create"><a href=
"LuCI.dom.html#create">create
</a></li>
189 <li data-name=
"LuCI.dom#data"><a href=
"LuCI.dom.html#data">data
</a></li>
191 <li data-name=
"LuCI.dom#elem"><a href=
"LuCI.dom.html#elem">elem
</a></li>
193 <li data-name=
"LuCI.dom#findClassInstance"><a href=
"LuCI.dom.html#findClassInstance">findClassInstance
</a></li>
195 <li data-name=
"LuCI.dom#isEmpty"><a href=
"LuCI.dom.html#isEmpty">isEmpty
</a></li>
197 <li data-name=
"LuCI.dom#matches"><a href=
"LuCI.dom.html#matches">matches
</a></li>
199 <li data-name=
"LuCI.dom#parent"><a href=
"LuCI.dom.html#parent">parent
</a></li>
201 <li data-name=
"LuCI.dom#parse"><a href=
"LuCI.dom.html#parse">parse
</a></li>
204 <ul class=
"events itemMembers">
209 <li class=
"item" data-name=
"LuCI.fs">
211 <a href=
"LuCI.fs.html">LuCI.fs
</a>
214 <ul class=
"members itemMembers">
217 <ul class=
"typedefs itemMembers">
219 <span class=
"subtitle">Typedefs
</span>
221 <li data-name=
"LuCI.fs.FileExecResult"><a href=
"LuCI.fs.html#.FileExecResult">FileExecResult
</a></li>
223 <li data-name=
"LuCI.fs.FileStatEntry"><a href=
"LuCI.fs.html#.FileStatEntry">FileStatEntry
</a></li>
226 <ul class=
"typedefs itemMembers">
229 <ul class=
"methods itemMembers">
231 <span class=
"subtitle">Methods
</span>
233 <li data-name=
"LuCI.fs#exec"><a href=
"LuCI.fs.html#exec">exec
</a></li>
235 <li data-name=
"LuCI.fs#exec_direct"><a href=
"LuCI.fs.html#exec_direct">exec_direct
</a></li>
237 <li data-name=
"LuCI.fs#lines"><a href=
"LuCI.fs.html#lines">lines
</a></li>
239 <li data-name=
"LuCI.fs#list"><a href=
"LuCI.fs.html#list">list
</a></li>
241 <li data-name=
"LuCI.fs#read"><a href=
"LuCI.fs.html#read">read
</a></li>
243 <li data-name=
"LuCI.fs#read_direct"><a href=
"LuCI.fs.html#read_direct">read_direct
</a></li>
245 <li data-name=
"LuCI.fs#remove"><a href=
"LuCI.fs.html#remove">remove
</a></li>
247 <li data-name=
"LuCI.fs#stat"><a href=
"LuCI.fs.html#stat">stat
</a></li>
249 <li data-name=
"LuCI.fs#trimmed"><a href=
"LuCI.fs.html#trimmed">trimmed
</a></li>
251 <li data-name=
"LuCI.fs#write"><a href=
"LuCI.fs.html#write">write
</a></li>
254 <ul class=
"events itemMembers">
259 <li class=
"item" data-name=
"LuCI.headers">
261 <a href=
"LuCI.headers.html">LuCI.headers
</a>
264 <ul class=
"members itemMembers">
267 <ul class=
"typedefs itemMembers">
270 <ul class=
"typedefs itemMembers">
273 <ul class=
"methods itemMembers">
275 <span class=
"subtitle">Methods
</span>
277 <li data-name=
"LuCI.headers#get"><a href=
"LuCI.headers.html#get">get
</a></li>
279 <li data-name=
"LuCI.headers#has"><a href=
"LuCI.headers.html#has">has
</a></li>
282 <ul class=
"events itemMembers">
287 <li class=
"item" data-name=
"LuCI.network">
289 <a href=
"LuCI.network.html">LuCI.network
</a>
292 <ul class=
"members itemMembers">
295 <ul class=
"typedefs itemMembers">
297 <span class=
"subtitle">Typedefs
</span>
299 <li data-name=
"LuCI.network.SwitchTopology"><a href=
"LuCI.network.html#.SwitchTopology">SwitchTopology
</a></li>
301 <li data-name=
"LuCI.network.WifiEncryption"><a href=
"LuCI.network.html#.WifiEncryption">WifiEncryption
</a></li>
303 <li data-name=
"LuCI.network.WifiPeerEntry"><a href=
"LuCI.network.html#.WifiPeerEntry">WifiPeerEntry
</a></li>
305 <li data-name=
"LuCI.network.WifiRateEntry"><a href=
"LuCI.network.html#.WifiRateEntry">WifiRateEntry
</a></li>
307 <li data-name=
"LuCI.network.WifiScanResult"><a href=
"LuCI.network.html#.WifiScanResult">WifiScanResult
</a></li>
310 <ul class=
"typedefs itemMembers">
313 <ul class=
"methods itemMembers">
315 <span class=
"subtitle">Methods
</span>
317 <li data-name=
"LuCI.network#addNetwork"><a href=
"LuCI.network.html#addNetwork">addNetwork
</a></li>
319 <li data-name=
"LuCI.network#addWifiNetwork"><a href=
"LuCI.network.html#addWifiNetwork">addWifiNetwork
</a></li>
321 <li data-name=
"LuCI.network#deleteNetwork"><a href=
"LuCI.network.html#deleteNetwork">deleteNetwork
</a></li>
323 <li data-name=
"LuCI.network#deleteWifiNetwork"><a href=
"LuCI.network.html#deleteWifiNetwork">deleteWifiNetwork
</a></li>
325 <li data-name=
"LuCI.network#flushCache"><a href=
"LuCI.network.html#flushCache">flushCache
</a></li>
327 <li data-name=
"LuCI.network#formatWifiEncryption"><a href=
"LuCI.network.html#formatWifiEncryption">formatWifiEncryption
</a></li>
329 <li data-name=
"LuCI.network#getDevice"><a href=
"LuCI.network.html#getDevice">getDevice
</a></li>
331 <li data-name=
"LuCI.network#getDevices"><a href=
"LuCI.network.html#getDevices">getDevices
</a></li>
333 <li data-name=
"LuCI.network#getDSLModemType"><a href=
"LuCI.network.html#getDSLModemType">getDSLModemType
</a></li>
335 <li data-name=
"LuCI.network#getHostHints"><a href=
"LuCI.network.html#getHostHints">getHostHints
</a></li>
337 <li data-name=
"LuCI.network#getIfnameOf"><a href=
"LuCI.network.html#getIfnameOf">getIfnameOf
</a></li>
339 <li data-name=
"LuCI.network#getNetwork"><a href=
"LuCI.network.html#getNetwork">getNetwork
</a></li>
341 <li data-name=
"LuCI.network#getNetworks"><a href=
"LuCI.network.html#getNetworks">getNetworks
</a></li>
343 <li data-name=
"LuCI.network#getProtocol"><a href=
"LuCI.network.html#getProtocol">getProtocol
</a></li>
345 <li data-name=
"LuCI.network#getProtocols"><a href=
"LuCI.network.html#getProtocols">getProtocols
</a></li>
347 <li data-name=
"LuCI.network#getSwitchTopologies"><a href=
"LuCI.network.html#getSwitchTopologies">getSwitchTopologies
</a></li>
349 <li data-name=
"LuCI.network#getWAN6Networks"><a href=
"LuCI.network.html#getWAN6Networks">getWAN6Networks
</a></li>
351 <li data-name=
"LuCI.network#getWANNetworks"><a href=
"LuCI.network.html#getWANNetworks">getWANNetworks
</a></li>
353 <li data-name=
"LuCI.network#getWifiDevice"><a href=
"LuCI.network.html#getWifiDevice">getWifiDevice
</a></li>
355 <li data-name=
"LuCI.network#getWifiDevices"><a href=
"LuCI.network.html#getWifiDevices">getWifiDevices
</a></li>
357 <li data-name=
"LuCI.network#getWifiNetwork"><a href=
"LuCI.network.html#getWifiNetwork">getWifiNetwork
</a></li>
359 <li data-name=
"LuCI.network#getWifiNetworks"><a href=
"LuCI.network.html#getWifiNetworks">getWifiNetworks
</a></li>
361 <li data-name=
"LuCI.network#isIgnoredDevice"><a href=
"LuCI.network.html#isIgnoredDevice">isIgnoredDevice
</a></li>
363 <li data-name=
"LuCI.network#maskToPrefix"><a href=
"LuCI.network.html#maskToPrefix">maskToPrefix
</a></li>
365 <li data-name=
"LuCI.network#prefixToMask"><a href=
"LuCI.network.html#prefixToMask">prefixToMask
</a></li>
367 <li data-name=
"LuCI.network#registerErrorCode"><a href=
"LuCI.network.html#registerErrorCode">registerErrorCode
</a></li>
369 <li data-name=
"LuCI.network#registerPatternVirtual"><a href=
"LuCI.network.html#registerPatternVirtual">registerPatternVirtual
</a></li>
371 <li data-name=
"LuCI.network#registerProtocol"><a href=
"LuCI.network.html#registerProtocol">registerProtocol
</a></li>
373 <li data-name=
"LuCI.network#renameNetwork"><a href=
"LuCI.network.html#renameNetwork">renameNetwork
</a></li>
376 <ul class=
"events itemMembers">
381 <li class=
"item" data-name=
"LuCI.network.Device">
383 <a href=
"LuCI.network.Device.html">LuCI.network.Device
</a>
386 <ul class=
"members itemMembers">
389 <ul class=
"typedefs itemMembers">
392 <ul class=
"typedefs itemMembers">
395 <ul class=
"methods itemMembers">
397 <span class=
"subtitle">Methods
</span>
399 <li data-name=
"LuCI.network.Device#getBridgeID"><a href=
"LuCI.network.Device.html#getBridgeID">getBridgeID
</a></li>
401 <li data-name=
"LuCI.network.Device#getBridgeSTP"><a href=
"LuCI.network.Device.html#getBridgeSTP">getBridgeSTP
</a></li>
403 <li data-name=
"LuCI.network.Device#getI18n"><a href=
"LuCI.network.Device.html#getI18n">getI18n
</a></li>
405 <li data-name=
"LuCI.network.Device#getIP6Addrs"><a href=
"LuCI.network.Device.html#getIP6Addrs">getIP6Addrs
</a></li>
407 <li data-name=
"LuCI.network.Device#getIPAddrs"><a href=
"LuCI.network.Device.html#getIPAddrs">getIPAddrs
</a></li>
409 <li data-name=
"LuCI.network.Device#getMAC"><a href=
"LuCI.network.Device.html#getMAC">getMAC
</a></li>
411 <li data-name=
"LuCI.network.Device#getMTU"><a href=
"LuCI.network.Device.html#getMTU">getMTU
</a></li>
413 <li data-name=
"LuCI.network.Device#getName"><a href=
"LuCI.network.Device.html#getName">getName
</a></li>
415 <li data-name=
"LuCI.network.Device#getNetwork"><a href=
"LuCI.network.Device.html#getNetwork">getNetwork
</a></li>
417 <li data-name=
"LuCI.network.Device#getNetworks"><a href=
"LuCI.network.Device.html#getNetworks">getNetworks
</a></li>
419 <li data-name=
"LuCI.network.Device#getPorts"><a href=
"LuCI.network.Device.html#getPorts">getPorts
</a></li>
421 <li data-name=
"LuCI.network.Device#getRXBytes"><a href=
"LuCI.network.Device.html#getRXBytes">getRXBytes
</a></li>
423 <li data-name=
"LuCI.network.Device#getRXPackets"><a href=
"LuCI.network.Device.html#getRXPackets">getRXPackets
</a></li>
425 <li data-name=
"LuCI.network.Device#getShortName"><a href=
"LuCI.network.Device.html#getShortName">getShortName
</a></li>
427 <li data-name=
"LuCI.network.Device#getTXBytes"><a href=
"LuCI.network.Device.html#getTXBytes">getTXBytes
</a></li>
429 <li data-name=
"LuCI.network.Device#getTXPackets"><a href=
"LuCI.network.Device.html#getTXPackets">getTXPackets
</a></li>
431 <li data-name=
"LuCI.network.Device#getType"><a href=
"LuCI.network.Device.html#getType">getType
</a></li>
433 <li data-name=
"LuCI.network.Device#getTypeI18n"><a href=
"LuCI.network.Device.html#getTypeI18n">getTypeI18n
</a></li>
435 <li data-name=
"LuCI.network.Device#getWifiNetwork"><a href=
"LuCI.network.Device.html#getWifiNetwork">getWifiNetwork
</a></li>
437 <li data-name=
"LuCI.network.Device#isBridge"><a href=
"LuCI.network.Device.html#isBridge">isBridge
</a></li>
439 <li data-name=
"LuCI.network.Device#isBridgePort"><a href=
"LuCI.network.Device.html#isBridgePort">isBridgePort
</a></li>
441 <li data-name=
"LuCI.network.Device#isUp"><a href=
"LuCI.network.Device.html#isUp">isUp
</a></li>
444 <ul class=
"events itemMembers">
449 <li class=
"item" data-name=
"LuCI.network.Hosts">
451 <a href=
"LuCI.network.Hosts.html">LuCI.network.Hosts
</a>
454 <ul class=
"members itemMembers">
457 <ul class=
"typedefs itemMembers">
460 <ul class=
"typedefs itemMembers">
463 <ul class=
"methods itemMembers">
465 <span class=
"subtitle">Methods
</span>
467 <li data-name=
"LuCI.network.Hosts#getHostnameByIP6Addr"><a href=
"LuCI.network.Hosts.html#getHostnameByIP6Addr">getHostnameByIP6Addr
</a></li>
469 <li data-name=
"LuCI.network.Hosts#getHostnameByIPAddr"><a href=
"LuCI.network.Hosts.html#getHostnameByIPAddr">getHostnameByIPAddr
</a></li>
471 <li data-name=
"LuCI.network.Hosts#getHostnameByMACAddr"><a href=
"LuCI.network.Hosts.html#getHostnameByMACAddr">getHostnameByMACAddr
</a></li>
473 <li data-name=
"LuCI.network.Hosts#getIP6AddrByMACAddr"><a href=
"LuCI.network.Hosts.html#getIP6AddrByMACAddr">getIP6AddrByMACAddr
</a></li>
475 <li data-name=
"LuCI.network.Hosts#getIPAddrByMACAddr"><a href=
"LuCI.network.Hosts.html#getIPAddrByMACAddr">getIPAddrByMACAddr
</a></li>
477 <li data-name=
"LuCI.network.Hosts#getMACAddrByIP6Addr"><a href=
"LuCI.network.Hosts.html#getMACAddrByIP6Addr">getMACAddrByIP6Addr
</a></li>
479 <li data-name=
"LuCI.network.Hosts#getMACAddrByIPAddr"><a href=
"LuCI.network.Hosts.html#getMACAddrByIPAddr">getMACAddrByIPAddr
</a></li>
481 <li data-name=
"LuCI.network.Hosts#getMACHints"><a href=
"LuCI.network.Hosts.html#getMACHints">getMACHints
</a></li>
484 <ul class=
"events itemMembers">
489 <li class=
"item" data-name=
"LuCI.network.Protocol">
491 <a href=
"LuCI.network.Protocol.html">LuCI.network.Protocol
</a>
494 <ul class=
"members itemMembers">
497 <ul class=
"typedefs itemMembers">
500 <ul class=
"typedefs itemMembers">
503 <ul class=
"methods itemMembers">
505 <span class=
"subtitle">Methods
</span>
507 <li data-name=
"LuCI.network.Protocol#addDevice"><a href=
"LuCI.network.Protocol.html#addDevice">addDevice
</a></li>
509 <li data-name=
"LuCI.network.Protocol#containsDevice"><a href=
"LuCI.network.Protocol.html#containsDevice">containsDevice
</a></li>
511 <li data-name=
"LuCI.network.Protocol#deleteConfiguration"><a href=
"LuCI.network.Protocol.html#deleteConfiguration">deleteConfiguration
</a></li>
513 <li data-name=
"LuCI.network.Protocol#deleteDevice"><a href=
"LuCI.network.Protocol.html#deleteDevice">deleteDevice
</a></li>
515 <li data-name=
"LuCI.network.Protocol#get"><a href=
"LuCI.network.Protocol.html#get">get
</a></li>
517 <li data-name=
"LuCI.network.Protocol#getDevice"><a href=
"LuCI.network.Protocol.html#getDevice">getDevice
</a></li>
519 <li data-name=
"LuCI.network.Protocol#getDevices"><a href=
"LuCI.network.Protocol.html#getDevices">getDevices
</a></li>
521 <li data-name=
"LuCI.network.Protocol#getDNS6Addrs"><a href=
"LuCI.network.Protocol.html#getDNS6Addrs">getDNS6Addrs
</a></li>
523 <li data-name=
"LuCI.network.Protocol#getDNSAddrs"><a href=
"LuCI.network.Protocol.html#getDNSAddrs">getDNSAddrs
</a></li>
525 <li data-name=
"LuCI.network.Protocol#getErrors"><a href=
"LuCI.network.Protocol.html#getErrors">getErrors
</a></li>
527 <li data-name=
"LuCI.network.Protocol#getExpiry"><a href=
"LuCI.network.Protocol.html#getExpiry">getExpiry
</a></li>
529 <li data-name=
"LuCI.network.Protocol#getGateway6Addr"><a href=
"LuCI.network.Protocol.html#getGateway6Addr">getGateway6Addr
</a></li>
531 <li data-name=
"LuCI.network.Protocol#getGatewayAddr"><a href=
"LuCI.network.Protocol.html#getGatewayAddr">getGatewayAddr
</a></li>
533 <li data-name=
"LuCI.network.Protocol#getI18n"><a href=
"LuCI.network.Protocol.html#getI18n">getI18n
</a></li>
535 <li data-name=
"LuCI.network.Protocol#getIfname"><a href=
"LuCI.network.Protocol.html#getIfname">getIfname
</a></li>
537 <li data-name=
"LuCI.network.Protocol#getIP6Addr"><a href=
"LuCI.network.Protocol.html#getIP6Addr">getIP6Addr
</a></li>
539 <li data-name=
"LuCI.network.Protocol#getIP6Addrs"><a href=
"LuCI.network.Protocol.html#getIP6Addrs">getIP6Addrs
</a></li>
541 <li data-name=
"LuCI.network.Protocol#getIP6Prefix"><a href=
"LuCI.network.Protocol.html#getIP6Prefix">getIP6Prefix
</a></li>
543 <li data-name=
"LuCI.network.Protocol#getIPAddr"><a href=
"LuCI.network.Protocol.html#getIPAddr">getIPAddr
</a></li>
545 <li data-name=
"LuCI.network.Protocol#getIPAddrs"><a href=
"LuCI.network.Protocol.html#getIPAddrs">getIPAddrs
</a></li>
547 <li data-name=
"LuCI.network.Protocol#getL2Device"><a href=
"LuCI.network.Protocol.html#getL2Device">getL2Device
</a></li>
549 <li data-name=
"LuCI.network.Protocol#getL3Device"><a href=
"LuCI.network.Protocol.html#getL3Device">getL3Device
</a></li>
551 <li data-name=
"LuCI.network.Protocol#getMetric"><a href=
"LuCI.network.Protocol.html#getMetric">getMetric
</a></li>
553 <li data-name=
"LuCI.network.Protocol#getName"><a href=
"LuCI.network.Protocol.html#getName">getName
</a></li>
555 <li data-name=
"LuCI.network.Protocol#getNetmask"><a href=
"LuCI.network.Protocol.html#getNetmask">getNetmask
</a></li>
557 <li data-name=
"LuCI.network.Protocol#getOpkgPackage"><a href=
"LuCI.network.Protocol.html#getOpkgPackage">getOpkgPackage
</a></li>
559 <li data-name=
"LuCI.network.Protocol#getProtocol"><a href=
"LuCI.network.Protocol.html#getProtocol">getProtocol
</a></li>
561 <li data-name=
"LuCI.network.Protocol#getType"><a href=
"LuCI.network.Protocol.html#getType">getType
</a></li>
563 <li data-name=
"LuCI.network.Protocol#getUptime"><a href=
"LuCI.network.Protocol.html#getUptime">getUptime
</a></li>
565 <li data-name=
"LuCI.network.Protocol#getZoneName"><a href=
"LuCI.network.Protocol.html#getZoneName">getZoneName
</a></li>
567 <li data-name=
"LuCI.network.Protocol#isAlias"><a href=
"LuCI.network.Protocol.html#isAlias">isAlias
</a></li>
569 <li data-name=
"LuCI.network.Protocol#isBridge"><a href=
"LuCI.network.Protocol.html#isBridge">isBridge
</a></li>
571 <li data-name=
"LuCI.network.Protocol#isDynamic"><a href=
"LuCI.network.Protocol.html#isDynamic">isDynamic
</a></li>
573 <li data-name=
"LuCI.network.Protocol#isEmpty"><a href=
"LuCI.network.Protocol.html#isEmpty">isEmpty
</a></li>
575 <li data-name=
"LuCI.network.Protocol#isFloating"><a href=
"LuCI.network.Protocol.html#isFloating">isFloating
</a></li>
577 <li data-name=
"LuCI.network.Protocol#isInstalled"><a href=
"LuCI.network.Protocol.html#isInstalled">isInstalled
</a></li>
579 <li data-name=
"LuCI.network.Protocol#isUp"><a href=
"LuCI.network.Protocol.html#isUp">isUp
</a></li>
581 <li data-name=
"LuCI.network.Protocol#isVirtual"><a href=
"LuCI.network.Protocol.html#isVirtual">isVirtual
</a></li>
583 <li data-name=
"LuCI.network.Protocol#set"><a href=
"LuCI.network.Protocol.html#set">set
</a></li>
586 <ul class=
"events itemMembers">
591 <li class=
"item" data-name=
"LuCI.network.WifiDevice">
593 <a href=
"LuCI.network.WifiDevice.html">LuCI.network.WifiDevice
</a>
596 <ul class=
"members itemMembers">
599 <ul class=
"typedefs itemMembers">
602 <ul class=
"typedefs itemMembers">
605 <ul class=
"methods itemMembers">
607 <span class=
"subtitle">Methods
</span>
609 <li data-name=
"LuCI.network.WifiDevice#addWifiNetwork"><a href=
"LuCI.network.WifiDevice.html#addWifiNetwork">addWifiNetwork
</a></li>
611 <li data-name=
"LuCI.network.WifiDevice#deleteWifiNetwork"><a href=
"LuCI.network.WifiDevice.html#deleteWifiNetwork">deleteWifiNetwork
</a></li>
613 <li data-name=
"LuCI.network.WifiDevice#get"><a href=
"LuCI.network.WifiDevice.html#get">get
</a></li>
615 <li data-name=
"LuCI.network.WifiDevice#getHTModes"><a href=
"LuCI.network.WifiDevice.html#getHTModes">getHTModes
</a></li>
617 <li data-name=
"LuCI.network.WifiDevice#getHWModes"><a href=
"LuCI.network.WifiDevice.html#getHWModes">getHWModes
</a></li>
619 <li data-name=
"LuCI.network.WifiDevice#getI18n"><a href=
"LuCI.network.WifiDevice.html#getI18n">getI18n
</a></li>
621 <li data-name=
"LuCI.network.WifiDevice#getName"><a href=
"LuCI.network.WifiDevice.html#getName">getName
</a></li>
623 <li data-name=
"LuCI.network.WifiDevice#getScanList"><a href=
"LuCI.network.WifiDevice.html#getScanList">getScanList
</a></li>
625 <li data-name=
"LuCI.network.WifiDevice#getWifiNetwork"><a href=
"LuCI.network.WifiDevice.html#getWifiNetwork">getWifiNetwork
</a></li>
627 <li data-name=
"LuCI.network.WifiDevice#getWifiNetworks"><a href=
"LuCI.network.WifiDevice.html#getWifiNetworks">getWifiNetworks
</a></li>
629 <li data-name=
"LuCI.network.WifiDevice#isDisabled"><a href=
"LuCI.network.WifiDevice.html#isDisabled">isDisabled
</a></li>
631 <li data-name=
"LuCI.network.WifiDevice#isUp"><a href=
"LuCI.network.WifiDevice.html#isUp">isUp
</a></li>
633 <li data-name=
"LuCI.network.WifiDevice#set"><a href=
"LuCI.network.WifiDevice.html#set">set
</a></li>
636 <ul class=
"events itemMembers">
641 <li class=
"item" data-name=
"LuCI.network.WifiNetwork">
643 <a href=
"LuCI.network.WifiNetwork.html">LuCI.network.WifiNetwork
</a>
646 <ul class=
"members itemMembers">
649 <ul class=
"typedefs itemMembers">
652 <ul class=
"typedefs itemMembers">
655 <ul class=
"methods itemMembers">
657 <span class=
"subtitle">Methods
</span>
659 <li data-name=
"LuCI.network.WifiNetwork#disconnectClient"><a href=
"LuCI.network.WifiNetwork.html#disconnectClient">disconnectClient
</a></li>
661 <li data-name=
"LuCI.network.WifiNetwork#get"><a href=
"LuCI.network.WifiNetwork.html#get">get
</a></li>
663 <li data-name=
"LuCI.network.WifiNetwork#getActiveBSSID"><a href=
"LuCI.network.WifiNetwork.html#getActiveBSSID">getActiveBSSID
</a></li>
665 <li data-name=
"LuCI.network.WifiNetwork#getActiveEncryption"><a href=
"LuCI.network.WifiNetwork.html#getActiveEncryption">getActiveEncryption
</a></li>
667 <li data-name=
"LuCI.network.WifiNetwork#getActiveMode"><a href=
"LuCI.network.WifiNetwork.html#getActiveMode">getActiveMode
</a></li>
669 <li data-name=
"LuCI.network.WifiNetwork#getActiveModeI18n"><a href=
"LuCI.network.WifiNetwork.html#getActiveModeI18n">getActiveModeI18n
</a></li>
671 <li data-name=
"LuCI.network.WifiNetwork#getActiveSSID"><a href=
"LuCI.network.WifiNetwork.html#getActiveSSID">getActiveSSID
</a></li>
673 <li data-name=
"LuCI.network.WifiNetwork#getAssocList"><a href=
"LuCI.network.WifiNetwork.html#getAssocList">getAssocList
</a></li>
675 <li data-name=
"LuCI.network.WifiNetwork#getBitRate"><a href=
"LuCI.network.WifiNetwork.html#getBitRate">getBitRate
</a></li>
677 <li data-name=
"LuCI.network.WifiNetwork#getBSSID"><a href=
"LuCI.network.WifiNetwork.html#getBSSID">getBSSID
</a></li>
679 <li data-name=
"LuCI.network.WifiNetwork#getChannel"><a href=
"LuCI.network.WifiNetwork.html#getChannel">getChannel
</a></li>
681 <li data-name=
"LuCI.network.WifiNetwork#getCountryCode"><a href=
"LuCI.network.WifiNetwork.html#getCountryCode">getCountryCode
</a></li>
683 <li data-name=
"LuCI.network.WifiNetwork#getDevice"><a href=
"LuCI.network.WifiNetwork.html#getDevice">getDevice
</a></li>
685 <li data-name=
"LuCI.network.WifiNetwork#getFrequency"><a href=
"LuCI.network.WifiNetwork.html#getFrequency">getFrequency
</a></li>
687 <li data-name=
"LuCI.network.WifiNetwork#getI18n"><a href=
"LuCI.network.WifiNetwork.html#getI18n">getI18n
</a></li>
689 <li data-name=
"LuCI.network.WifiNetwork#getID"><a href=
"LuCI.network.WifiNetwork.html#getID">getID
</a></li>
691 <li data-name=
"LuCI.network.WifiNetwork#getIfname"><a href=
"LuCI.network.WifiNetwork.html#getIfname">getIfname
</a></li>
693 <li data-name=
"LuCI.network.WifiNetwork#getMeshID"><a href=
"LuCI.network.WifiNetwork.html#getMeshID">getMeshID
</a></li>
695 <li data-name=
"LuCI.network.WifiNetwork#getMode"><a href=
"LuCI.network.WifiNetwork.html#getMode">getMode
</a></li>
697 <li data-name=
"LuCI.network.WifiNetwork#getName"><a href=
"LuCI.network.WifiNetwork.html#getName">getName
</a></li>
699 <li data-name=
"LuCI.network.WifiNetwork#getNetwork"><a href=
"LuCI.network.WifiNetwork.html#getNetwork">getNetwork
</a></li>
701 <li data-name=
"LuCI.network.WifiNetwork#getNetworkNames"><a href=
"LuCI.network.WifiNetwork.html#getNetworkNames">getNetworkNames
</a></li>
703 <li data-name=
"LuCI.network.WifiNetwork#getNetworks"><a href=
"LuCI.network.WifiNetwork.html#getNetworks">getNetworks
</a></li>
705 <li data-name=
"LuCI.network.WifiNetwork#getNoise"><a href=
"LuCI.network.WifiNetwork.html#getNoise">getNoise
</a></li>
707 <li data-name=
"LuCI.network.WifiNetwork#getShortName"><a href=
"LuCI.network.WifiNetwork.html#getShortName">getShortName
</a></li>
709 <li data-name=
"LuCI.network.WifiNetwork#getSignal"><a href=
"LuCI.network.WifiNetwork.html#getSignal">getSignal
</a></li>
711 <li data-name=
"LuCI.network.WifiNetwork#getSignalLevel"><a href=
"LuCI.network.WifiNetwork.html#getSignalLevel">getSignalLevel
</a></li>
713 <li data-name=
"LuCI.network.WifiNetwork#getSignalPercent"><a href=
"LuCI.network.WifiNetwork.html#getSignalPercent">getSignalPercent
</a></li>
715 <li data-name=
"LuCI.network.WifiNetwork#getSSID"><a href=
"LuCI.network.WifiNetwork.html#getSSID">getSSID
</a></li>
717 <li data-name=
"LuCI.network.WifiNetwork#getTXPower"><a href=
"LuCI.network.WifiNetwork.html#getTXPower">getTXPower
</a></li>
719 <li data-name=
"LuCI.network.WifiNetwork#getTXPowerOffset"><a href=
"LuCI.network.WifiNetwork.html#getTXPowerOffset">getTXPowerOffset
</a></li>
721 <li data-name=
"LuCI.network.WifiNetwork#getWifiDevice"><a href=
"LuCI.network.WifiNetwork.html#getWifiDevice">getWifiDevice
</a></li>
723 <li data-name=
"LuCI.network.WifiNetwork#getWifiDeviceName"><a href=
"LuCI.network.WifiNetwork.html#getWifiDeviceName">getWifiDeviceName
</a></li>
725 <li data-name=
"LuCI.network.WifiNetwork#isClientDisconnectSupported"><a href=
"LuCI.network.WifiNetwork.html#isClientDisconnectSupported">isClientDisconnectSupported
</a></li>
727 <li data-name=
"LuCI.network.WifiNetwork#isDisabled"><a href=
"LuCI.network.WifiNetwork.html#isDisabled">isDisabled
</a></li>
729 <li data-name=
"LuCI.network.WifiNetwork#isUp"><a href=
"LuCI.network.WifiNetwork.html#isUp">isUp
</a></li>
731 <li data-name=
"LuCI.network.WifiNetwork#set"><a href=
"LuCI.network.WifiNetwork.html#set">set
</a></li>
734 <ul class=
"events itemMembers">
739 <li class=
"item" data-name=
"LuCI.poll">
741 <a href=
"LuCI.poll.html">LuCI.poll
</a>
744 <ul class=
"members itemMembers">
747 <ul class=
"typedefs itemMembers">
750 <ul class=
"typedefs itemMembers">
753 <ul class=
"methods itemMembers">
755 <span class=
"subtitle">Methods
</span>
757 <li data-name=
"LuCI.poll#active"><a href=
"LuCI.poll.html#active">active
</a></li>
759 <li data-name=
"LuCI.poll#add"><a href=
"LuCI.poll.html#add">add
</a></li>
761 <li data-name=
"LuCI.poll#remove"><a href=
"LuCI.poll.html#remove">remove
</a></li>
763 <li data-name=
"LuCI.poll#start"><a href=
"LuCI.poll.html#start">start
</a></li>
765 <li data-name=
"LuCI.poll#stop"><a href=
"LuCI.poll.html#stop">stop
</a></li>
768 <ul class=
"events itemMembers">
773 <li class=
"item" data-name=
"LuCI.request">
775 <a href=
"LuCI.request.html">LuCI.request
</a>
778 <ul class=
"members itemMembers">
781 <ul class=
"typedefs itemMembers">
783 <span class=
"subtitle">Typedefs
</span>
785 <li data-name=
"LuCI.request.interceptorFn"><a href=
"LuCI.request.html#.interceptorFn">interceptorFn
</a></li>
787 <li data-name=
"LuCI.request.RequestOptions"><a href=
"LuCI.request.html#.RequestOptions">RequestOptions
</a></li>
790 <ul class=
"typedefs itemMembers">
793 <ul class=
"methods itemMembers">
795 <span class=
"subtitle">Methods
</span>
797 <li data-name=
"LuCI.request#addInterceptor"><a href=
"LuCI.request.html#addInterceptor">addInterceptor
</a></li>
799 <li data-name=
"LuCI.request#expandURL"><a href=
"LuCI.request.html#expandURL">expandURL
</a></li>
801 <li data-name=
"LuCI.request#get"><a href=
"LuCI.request.html#get">get
</a></li>
803 <li data-name=
"LuCI.request#post"><a href=
"LuCI.request.html#post">post
</a></li>
805 <li data-name=
"LuCI.request#removeInterceptor"><a href=
"LuCI.request.html#removeInterceptor">removeInterceptor
</a></li>
807 <li data-name=
"LuCI.request#request"><a href=
"LuCI.request.html#request">request
</a></li>
810 <ul class=
"events itemMembers">
815 <li class=
"item" data-name=
"LuCI.request.poll">
817 <a href=
"LuCI.request.poll.html">LuCI.request.poll
</a>
820 <ul class=
"members itemMembers">
823 <ul class=
"typedefs itemMembers">
825 <span class=
"subtitle">Typedefs
</span>
827 <li data-name=
"LuCI.request.poll~callbackFn"><a href=
"LuCI.request.poll.html#~callbackFn">callbackFn
</a></li>
830 <ul class=
"typedefs itemMembers">
833 <ul class=
"methods itemMembers">
835 <span class=
"subtitle">Methods
</span>
837 <li data-name=
"LuCI.request.poll#active"><a href=
"LuCI.request.poll.html#active">active
</a></li>
839 <li data-name=
"LuCI.request.poll#add"><a href=
"LuCI.request.poll.html#add">add
</a></li>
841 <li data-name=
"LuCI.request.poll#remove"><a href=
"LuCI.request.poll.html#remove">remove
</a></li>
843 <li data-name=
"LuCI.request.poll#start"><a href=
"LuCI.request.poll.html#start">start
</a></li>
845 <li data-name=
"LuCI.request.poll#stop"><a href=
"LuCI.request.poll.html#stop">stop
</a></li>
848 <ul class=
"events itemMembers">
853 <li class=
"item" data-name=
"LuCI.response">
855 <a href=
"LuCI.response.html">LuCI.response
</a>
858 <ul class=
"members itemMembers">
860 <span class=
"subtitle">Members
</span>
862 <li data-name=
"LuCI.response#duration"><a href=
"LuCI.response.html#duration">duration
</a></li>
864 <li data-name=
"LuCI.response#headers"><a href=
"LuCI.response.html#headers">headers
</a></li>
866 <li data-name=
"LuCI.response#ok"><a href=
"LuCI.response.html#ok">ok
</a></li>
868 <li data-name=
"LuCI.response#status"><a href=
"LuCI.response.html#status">status
</a></li>
870 <li data-name=
"LuCI.response#statusText"><a href=
"LuCI.response.html#statusText">statusText
</a></li>
872 <li data-name=
"LuCI.response#url"><a href=
"LuCI.response.html#url">url
</a></li>
875 <ul class=
"typedefs itemMembers">
878 <ul class=
"typedefs itemMembers">
881 <ul class=
"methods itemMembers">
883 <span class=
"subtitle">Methods
</span>
885 <li data-name=
"LuCI.response#blob"><a href=
"LuCI.response.html#blob">blob
</a></li>
887 <li data-name=
"LuCI.response#clone"><a href=
"LuCI.response.html#clone">clone
</a></li>
889 <li data-name=
"LuCI.response#json"><a href=
"LuCI.response.html#json">json
</a></li>
891 <li data-name=
"LuCI.response#text"><a href=
"LuCI.response.html#text">text
</a></li>
894 <ul class=
"events itemMembers">
899 <li class=
"item" data-name=
"LuCI.rpc">
901 <a href=
"LuCI.rpc.html">LuCI.rpc
</a>
904 <ul class=
"members itemMembers">
907 <ul class=
"typedefs itemMembers">
909 <span class=
"subtitle">Typedefs
</span>
911 <li data-name=
"LuCI.rpc.DeclareOptions"><a href=
"LuCI.rpc.html#.DeclareOptions">DeclareOptions
</a></li>
913 <li data-name=
"LuCI.rpc~filterFn"><a href=
"LuCI.rpc.html#~filterFn">filterFn
</a></li>
915 <li data-name=
"LuCI.rpc~interceptorFn"><a href=
"LuCI.rpc.html#~interceptorFn">interceptorFn
</a></li>
917 <li data-name=
"LuCI.rpc~invokeFn"><a href=
"LuCI.rpc.html#~invokeFn">invokeFn
</a></li>
920 <ul class=
"typedefs itemMembers">
923 <ul class=
"methods itemMembers">
925 <span class=
"subtitle">Methods
</span>
927 <li data-name=
"LuCI.rpc#addInterceptor"><a href=
"LuCI.rpc.html#addInterceptor">addInterceptor
</a></li>
929 <li data-name=
"LuCI.rpc#declare"><a href=
"LuCI.rpc.html#declare">declare
</a></li>
931 <li data-name=
"LuCI.rpc#getBaseURL"><a href=
"LuCI.rpc.html#getBaseURL">getBaseURL
</a></li>
933 <li data-name=
"LuCI.rpc#getSessionID"><a href=
"LuCI.rpc.html#getSessionID">getSessionID
</a></li>
935 <li data-name=
"LuCI.rpc#getStatusText"><a href=
"LuCI.rpc.html#getStatusText">getStatusText
</a></li>
937 <li data-name=
"LuCI.rpc#list"><a href=
"LuCI.rpc.html#list">list
</a></li>
939 <li data-name=
"LuCI.rpc#removeInterceptor"><a href=
"LuCI.rpc.html#removeInterceptor">removeInterceptor
</a></li>
941 <li data-name=
"LuCI.rpc#setBaseURL"><a href=
"LuCI.rpc.html#setBaseURL">setBaseURL
</a></li>
943 <li data-name=
"LuCI.rpc#setSessionID"><a href=
"LuCI.rpc.html#setSessionID">setSessionID
</a></li>
946 <ul class=
"events itemMembers">
951 <li class=
"item" data-name=
"LuCI.uci">
953 <a href=
"LuCI.uci.html">LuCI.uci
</a>
956 <ul class=
"members itemMembers">
959 <ul class=
"typedefs itemMembers">
961 <span class=
"subtitle">Typedefs
</span>
963 <li data-name=
"LuCI.uci.ChangeRecord"><a href=
"LuCI.uci.html#.ChangeRecord">ChangeRecord
</a></li>
965 <li data-name=
"LuCI.uci.SectionObject"><a href=
"LuCI.uci.html#.SectionObject">SectionObject
</a></li>
967 <li data-name=
"LuCI.uci~sectionsFn"><a href=
"LuCI.uci.html#~sectionsFn">sectionsFn
</a></li>
970 <ul class=
"typedefs itemMembers">
973 <ul class=
"methods itemMembers">
975 <span class=
"subtitle">Methods
</span>
977 <li data-name=
"LuCI.uci#add"><a href=
"LuCI.uci.html#add">add
</a></li>
979 <li data-name=
"LuCI.uci#apply"><a href=
"LuCI.uci.html#apply">apply
</a></li>
981 <li data-name=
"LuCI.uci#changes"><a href=
"LuCI.uci.html#changes">changes
</a></li>
983 <li data-name=
"LuCI.uci#createSID"><a href=
"LuCI.uci.html#createSID">createSID
</a></li>
985 <li data-name=
"LuCI.uci#get"><a href=
"LuCI.uci.html#get">get
</a></li>
987 <li data-name=
"LuCI.uci#get_first"><a href=
"LuCI.uci.html#get_first">get_first
</a></li>
989 <li data-name=
"LuCI.uci#load"><a href=
"LuCI.uci.html#load">load
</a></li>
991 <li data-name=
"LuCI.uci#move"><a href=
"LuCI.uci.html#move">move
</a></li>
993 <li data-name=
"LuCI.uci#remove"><a href=
"LuCI.uci.html#remove">remove
</a></li>
995 <li data-name=
"LuCI.uci#resolveSID"><a href=
"LuCI.uci.html#resolveSID">resolveSID
</a></li>
997 <li data-name=
"LuCI.uci#save"><a href=
"LuCI.uci.html#save">save
</a></li>
999 <li data-name=
"LuCI.uci#sections"><a href=
"LuCI.uci.html#sections">sections
</a></li>
1001 <li data-name=
"LuCI.uci#set"><a href=
"LuCI.uci.html#set">set
</a></li>
1003 <li data-name=
"LuCI.uci#set_first"><a href=
"LuCI.uci.html#set_first">set_first
</a></li>
1005 <li data-name=
"LuCI.uci#unload"><a href=
"LuCI.uci.html#unload">unload
</a></li>
1007 <li data-name=
"LuCI.uci#unset"><a href=
"LuCI.uci.html#unset">unset
</a></li>
1009 <li data-name=
"LuCI.uci#unset_first"><a href=
"LuCI.uci.html#unset_first">unset_first
</a></li>
1012 <ul class=
"events itemMembers">
1017 <li class=
"item" data-name=
"LuCI.ui">
1018 <span class=
"title">
1019 <a href=
"LuCI.ui.html">LuCI.ui
</a>
1022 <ul class=
"members itemMembers">
1025 <ul class=
"typedefs itemMembers">
1027 <span class=
"subtitle">Typedefs
</span>
1029 <li data-name=
"LuCI.ui.FileUploadReply"><a href=
"LuCI.ui.html#.FileUploadReply">FileUploadReply
</a></li>
1032 <ul class=
"typedefs itemMembers">
1035 <ul class=
"methods itemMembers">
1037 <span class=
"subtitle">Methods
</span>
1039 <li data-name=
"LuCI.ui#addNotification"><a href=
"LuCI.ui.html#addNotification">addNotification
</a></li>
1041 <li data-name=
"LuCI.ui#addValidator"><a href=
"LuCI.ui.html#addValidator">addValidator
</a></li>
1043 <li data-name=
"LuCI.ui#awaitReconnect"><a href=
"LuCI.ui.html#awaitReconnect">awaitReconnect
</a></li>
1045 <li data-name=
"LuCI.ui#createHandlerFn"><a href=
"LuCI.ui.html#createHandlerFn">createHandlerFn
</a></li>
1047 <li data-name=
"LuCI.ui#hideIndicator"><a href=
"LuCI.ui.html#hideIndicator">hideIndicator
</a></li>
1049 <li data-name=
"LuCI.ui#hideModal"><a href=
"LuCI.ui.html#hideModal">hideModal
</a></li>
1051 <li data-name=
"LuCI.ui#instantiateView"><a href=
"LuCI.ui.html#instantiateView">instantiateView
</a></li>
1053 <li data-name=
"LuCI.ui#itemlist"><a href=
"LuCI.ui.html#itemlist">itemlist
</a></li>
1055 <li data-name=
"LuCI.ui#pingDevice"><a href=
"LuCI.ui.html#pingDevice">pingDevice
</a></li>
1057 <li data-name=
"LuCI.ui#showIndicator"><a href=
"LuCI.ui.html#showIndicator">showIndicator
</a></li>
1059 <li data-name=
"LuCI.ui#showModal"><a href=
"LuCI.ui.html#showModal">showModal
</a></li>
1061 <li data-name=
"LuCI.ui#uploadFile"><a href=
"LuCI.ui.html#uploadFile">uploadFile
</a></li>
1064 <ul class=
"events itemMembers">
1069 <li class=
"item" data-name=
"LuCI.ui.AbstractElement">
1070 <span class=
"title">
1071 <a href=
"LuCI.ui.AbstractElement.html">LuCI.ui.AbstractElement
</a>
1074 <ul class=
"members itemMembers">
1077 <ul class=
"typedefs itemMembers">
1079 <span class=
"subtitle">Typedefs
</span>
1081 <li data-name=
"LuCI.ui.AbstractElement.InitOptions"><a href=
"LuCI.ui.AbstractElement.html#.InitOptions">InitOptions
</a></li>
1084 <ul class=
"typedefs itemMembers">
1087 <ul class=
"methods itemMembers">
1089 <span class=
"subtitle">Methods
</span>
1091 <li data-name=
"LuCI.ui.AbstractElement#getValue"><a href=
"LuCI.ui.AbstractElement.html#getValue">getValue
</a></li>
1093 <li data-name=
"LuCI.ui.AbstractElement#isValid"><a href=
"LuCI.ui.AbstractElement.html#isValid">isValid
</a></li>
1095 <li data-name=
"LuCI.ui.AbstractElement#registerEvents"><a href=
"LuCI.ui.AbstractElement.html#registerEvents">registerEvents
</a></li>
1097 <li data-name=
"LuCI.ui.AbstractElement#render"><a href=
"LuCI.ui.AbstractElement.html#render">render
</a></li>
1099 <li data-name=
"LuCI.ui.AbstractElement#setChangeEvents"><a href=
"LuCI.ui.AbstractElement.html#setChangeEvents">setChangeEvents
</a></li>
1101 <li data-name=
"LuCI.ui.AbstractElement#setUpdateEvents"><a href=
"LuCI.ui.AbstractElement.html#setUpdateEvents">setUpdateEvents
</a></li>
1103 <li data-name=
"LuCI.ui.AbstractElement#setValue"><a href=
"LuCI.ui.AbstractElement.html#setValue">setValue
</a></li>
1105 <li data-name=
"LuCI.ui.AbstractElement#triggerValidation"><a href=
"LuCI.ui.AbstractElement.html#triggerValidation">triggerValidation
</a></li>
1108 <ul class=
"events itemMembers">
1113 <li class=
"item" data-name=
"LuCI.ui.changes">
1114 <span class=
"title">
1115 <a href=
"LuCI.ui.changes.html">LuCI.ui.changes
</a>
1118 <ul class=
"members itemMembers">
1121 <ul class=
"typedefs itemMembers">
1124 <ul class=
"typedefs itemMembers">
1127 <ul class=
"methods itemMembers">
1129 <span class=
"subtitle">Methods
</span>
1131 <li data-name=
"LuCI.ui.changes#apply"><a href=
"LuCI.ui.changes.html#apply">apply
</a></li>
1133 <li data-name=
"LuCI.ui.changes#displayChanges"><a href=
"LuCI.ui.changes.html#displayChanges">displayChanges
</a></li>
1135 <li data-name=
"LuCI.ui.changes#renderChangeIndicator"><a href=
"LuCI.ui.changes.html#renderChangeIndicator">renderChangeIndicator
</a></li>
1137 <li data-name=
"LuCI.ui.changes#revert"><a href=
"LuCI.ui.changes.html#revert">revert
</a></li>
1139 <li data-name=
"LuCI.ui.changes#setIndicator"><a href=
"LuCI.ui.changes.html#setIndicator">setIndicator
</a></li>
1142 <ul class=
"events itemMembers">
1147 <li class=
"item" data-name=
"LuCI.ui.Checkbox">
1148 <span class=
"title">
1149 <a href=
"LuCI.ui.Checkbox.html">LuCI.ui.Checkbox
</a>
1152 <ul class=
"members itemMembers">
1155 <ul class=
"typedefs itemMembers">
1157 <span class=
"subtitle">Typedefs
</span>
1159 <li data-name=
"LuCI.ui.Checkbox.InitOptions"><a href=
"LuCI.ui.Checkbox.html#.InitOptions">InitOptions
</a></li>
1162 <ul class=
"typedefs itemMembers">
1165 <ul class=
"methods itemMembers">
1167 <span class=
"subtitle">Methods
</span>
1169 <li data-name=
"LuCI.ui.Checkbox#getValue"><a href=
"LuCI.ui.Checkbox.html#getValue">getValue
</a></li>
1171 <li data-name=
"LuCI.ui.Checkbox#isChecked"><a href=
"LuCI.ui.Checkbox.html#isChecked">isChecked
</a></li>
1173 <li data-name=
"LuCI.ui.Checkbox#isValid"><a href=
"LuCI.ui.Checkbox.html#isValid">isValid
</a></li>
1175 <li data-name=
"LuCI.ui.Checkbox#registerEvents"><a href=
"LuCI.ui.Checkbox.html#registerEvents">registerEvents
</a></li>
1177 <li data-name=
"LuCI.ui.Checkbox#render"><a href=
"LuCI.ui.Checkbox.html#render">render
</a></li>
1179 <li data-name=
"LuCI.ui.Checkbox#setChangeEvents"><a href=
"LuCI.ui.Checkbox.html#setChangeEvents">setChangeEvents
</a></li>
1181 <li data-name=
"LuCI.ui.Checkbox#setUpdateEvents"><a href=
"LuCI.ui.Checkbox.html#setUpdateEvents">setUpdateEvents
</a></li>
1183 <li data-name=
"LuCI.ui.Checkbox#setValue"><a href=
"LuCI.ui.Checkbox.html#setValue">setValue
</a></li>
1185 <li data-name=
"LuCI.ui.Checkbox#triggerValidation"><a href=
"LuCI.ui.Checkbox.html#triggerValidation">triggerValidation
</a></li>
1188 <ul class=
"events itemMembers">
1193 <li class=
"item" data-name=
"LuCI.ui.Combobox">
1194 <span class=
"title">
1195 <a href=
"LuCI.ui.Combobox.html">LuCI.ui.Combobox
</a>
1198 <ul class=
"members itemMembers">
1201 <ul class=
"typedefs itemMembers">
1203 <span class=
"subtitle">Typedefs
</span>
1205 <li data-name=
"LuCI.ui.Combobox.InitOptions"><a href=
"LuCI.ui.Combobox.html#.InitOptions">InitOptions
</a></li>
1208 <ul class=
"typedefs itemMembers">
1211 <ul class=
"methods itemMembers">
1213 <span class=
"subtitle">Methods
</span>
1215 <li data-name=
"LuCI.ui.Combobox#addChoices"><a href=
"LuCI.ui.Combobox.html#addChoices">addChoices
</a></li>
1217 <li data-name=
"LuCI.ui.Combobox#clearChoices"><a href=
"LuCI.ui.Combobox.html#clearChoices">clearChoices
</a></li>
1219 <li data-name=
"LuCI.ui.Combobox#closeAllDropdowns"><a href=
"LuCI.ui.Combobox.html#closeAllDropdowns">closeAllDropdowns
</a></li>
1221 <li data-name=
"LuCI.ui.Combobox#isValid"><a href=
"LuCI.ui.Combobox.html#isValid">isValid
</a></li>
1223 <li data-name=
"LuCI.ui.Combobox#registerEvents"><a href=
"LuCI.ui.Combobox.html#registerEvents">registerEvents
</a></li>
1225 <li data-name=
"LuCI.ui.Combobox#setChangeEvents"><a href=
"LuCI.ui.Combobox.html#setChangeEvents">setChangeEvents
</a></li>
1227 <li data-name=
"LuCI.ui.Combobox#setUpdateEvents"><a href=
"LuCI.ui.Combobox.html#setUpdateEvents">setUpdateEvents
</a></li>
1229 <li data-name=
"LuCI.ui.Combobox#triggerValidation"><a href=
"LuCI.ui.Combobox.html#triggerValidation">triggerValidation
</a></li>
1232 <ul class=
"events itemMembers">
1237 <li class=
"item" data-name=
"LuCI.ui.ComboButton">
1238 <span class=
"title">
1239 <a href=
"LuCI.ui.ComboButton.html">LuCI.ui.ComboButton
</a>
1242 <ul class=
"members itemMembers">
1245 <ul class=
"typedefs itemMembers">
1247 <span class=
"subtitle">Typedefs
</span>
1249 <li data-name=
"LuCI.ui.ComboButton.InitOptions"><a href=
"LuCI.ui.ComboButton.html#.InitOptions">InitOptions
</a></li>
1252 <ul class=
"typedefs itemMembers">
1255 <ul class=
"methods itemMembers">
1257 <span class=
"subtitle">Methods
</span>
1259 <li data-name=
"LuCI.ui.ComboButton#addChoices"><a href=
"LuCI.ui.ComboButton.html#addChoices">addChoices
</a></li>
1261 <li data-name=
"LuCI.ui.ComboButton#clearChoices"><a href=
"LuCI.ui.ComboButton.html#clearChoices">clearChoices
</a></li>
1263 <li data-name=
"LuCI.ui.ComboButton#closeAllDropdowns"><a href=
"LuCI.ui.ComboButton.html#closeAllDropdowns">closeAllDropdowns
</a></li>
1265 <li data-name=
"LuCI.ui.ComboButton#isValid"><a href=
"LuCI.ui.ComboButton.html#isValid">isValid
</a></li>
1267 <li data-name=
"LuCI.ui.ComboButton#registerEvents"><a href=
"LuCI.ui.ComboButton.html#registerEvents">registerEvents
</a></li>
1269 <li data-name=
"LuCI.ui.ComboButton#setChangeEvents"><a href=
"LuCI.ui.ComboButton.html#setChangeEvents">setChangeEvents
</a></li>
1271 <li data-name=
"LuCI.ui.ComboButton#setUpdateEvents"><a href=
"LuCI.ui.ComboButton.html#setUpdateEvents">setUpdateEvents
</a></li>
1273 <li data-name=
"LuCI.ui.ComboButton#triggerValidation"><a href=
"LuCI.ui.ComboButton.html#triggerValidation">triggerValidation
</a></li>
1276 <ul class=
"events itemMembers">
1281 <li class=
"item" data-name=
"LuCI.ui.Dropdown">
1282 <span class=
"title">
1283 <a href=
"LuCI.ui.Dropdown.html">LuCI.ui.Dropdown
</a>
1286 <ul class=
"members itemMembers">
1289 <ul class=
"typedefs itemMembers">
1291 <span class=
"subtitle">Typedefs
</span>
1293 <li data-name=
"LuCI.ui.Dropdown.InitOptions"><a href=
"LuCI.ui.Dropdown.html#.InitOptions">InitOptions
</a></li>
1296 <ul class=
"typedefs itemMembers">
1299 <ul class=
"methods itemMembers">
1301 <span class=
"subtitle">Methods
</span>
1303 <li data-name=
"LuCI.ui.Dropdown#addChoices"><a href=
"LuCI.ui.Dropdown.html#addChoices">addChoices
</a></li>
1305 <li data-name=
"LuCI.ui.Dropdown#clearChoices"><a href=
"LuCI.ui.Dropdown.html#clearChoices">clearChoices
</a></li>
1307 <li data-name=
"LuCI.ui.Dropdown#closeAllDropdowns"><a href=
"LuCI.ui.Dropdown.html#closeAllDropdowns">closeAllDropdowns
</a></li>
1309 <li data-name=
"LuCI.ui.Dropdown#getValue"><a href=
"LuCI.ui.Dropdown.html#getValue">getValue
</a></li>
1311 <li data-name=
"LuCI.ui.Dropdown#isValid"><a href=
"LuCI.ui.Dropdown.html#isValid">isValid
</a></li>
1313 <li data-name=
"LuCI.ui.Dropdown#registerEvents"><a href=
"LuCI.ui.Dropdown.html#registerEvents">registerEvents
</a></li>
1315 <li data-name=
"LuCI.ui.Dropdown#render"><a href=
"LuCI.ui.Dropdown.html#render">render
</a></li>
1317 <li data-name=
"LuCI.ui.Dropdown#setChangeEvents"><a href=
"LuCI.ui.Dropdown.html#setChangeEvents">setChangeEvents
</a></li>
1319 <li data-name=
"LuCI.ui.Dropdown#setUpdateEvents"><a href=
"LuCI.ui.Dropdown.html#setUpdateEvents">setUpdateEvents
</a></li>
1321 <li data-name=
"LuCI.ui.Dropdown#setValue"><a href=
"LuCI.ui.Dropdown.html#setValue">setValue
</a></li>
1323 <li data-name=
"LuCI.ui.Dropdown#triggerValidation"><a href=
"LuCI.ui.Dropdown.html#triggerValidation">triggerValidation
</a></li>
1326 <ul class=
"events itemMembers">
1331 <li class=
"item" data-name=
"LuCI.ui.DynamicList">
1332 <span class=
"title">
1333 <a href=
"LuCI.ui.DynamicList.html">LuCI.ui.DynamicList
</a>
1336 <ul class=
"members itemMembers">
1339 <ul class=
"typedefs itemMembers">
1341 <span class=
"subtitle">Typedefs
</span>
1343 <li data-name=
"LuCI.ui.DynamicList.InitOptions"><a href=
"LuCI.ui.DynamicList.html#.InitOptions">InitOptions
</a></li>
1346 <ul class=
"typedefs itemMembers">
1349 <ul class=
"methods itemMembers">
1351 <span class=
"subtitle">Methods
</span>
1353 <li data-name=
"LuCI.ui.DynamicList#addChoices"><a href=
"LuCI.ui.DynamicList.html#addChoices">addChoices
</a></li>
1355 <li data-name=
"LuCI.ui.DynamicList#clearChoices"><a href=
"LuCI.ui.DynamicList.html#clearChoices">clearChoices
</a></li>
1357 <li data-name=
"LuCI.ui.DynamicList#getValue"><a href=
"LuCI.ui.DynamicList.html#getValue">getValue
</a></li>
1359 <li data-name=
"LuCI.ui.DynamicList#isValid"><a href=
"LuCI.ui.DynamicList.html#isValid">isValid
</a></li>
1361 <li data-name=
"LuCI.ui.DynamicList#registerEvents"><a href=
"LuCI.ui.DynamicList.html#registerEvents">registerEvents
</a></li>
1363 <li data-name=
"LuCI.ui.DynamicList#render"><a href=
"LuCI.ui.DynamicList.html#render">render
</a></li>
1365 <li data-name=
"LuCI.ui.DynamicList#setChangeEvents"><a href=
"LuCI.ui.DynamicList.html#setChangeEvents">setChangeEvents
</a></li>
1367 <li data-name=
"LuCI.ui.DynamicList#setUpdateEvents"><a href=
"LuCI.ui.DynamicList.html#setUpdateEvents">setUpdateEvents
</a></li>
1369 <li data-name=
"LuCI.ui.DynamicList#setValue"><a href=
"LuCI.ui.DynamicList.html#setValue">setValue
</a></li>
1371 <li data-name=
"LuCI.ui.DynamicList#triggerValidation"><a href=
"LuCI.ui.DynamicList.html#triggerValidation">triggerValidation
</a></li>
1374 <ul class=
"events itemMembers">
1379 <li class=
"item" data-name=
"LuCI.ui.FileUpload">
1380 <span class=
"title">
1381 <a href=
"LuCI.ui.FileUpload.html">LuCI.ui.FileUpload
</a>
1384 <ul class=
"members itemMembers">
1387 <ul class=
"typedefs itemMembers">
1389 <span class=
"subtitle">Typedefs
</span>
1391 <li data-name=
"LuCI.ui.FileUpload.InitOptions"><a href=
"LuCI.ui.FileUpload.html#.InitOptions">InitOptions
</a></li>
1394 <ul class=
"typedefs itemMembers">
1397 <ul class=
"methods itemMembers">
1399 <span class=
"subtitle">Methods
</span>
1401 <li data-name=
"LuCI.ui.FileUpload#getValue"><a href=
"LuCI.ui.FileUpload.html#getValue">getValue
</a></li>
1403 <li data-name=
"LuCI.ui.FileUpload#isValid"><a href=
"LuCI.ui.FileUpload.html#isValid">isValid
</a></li>
1405 <li data-name=
"LuCI.ui.FileUpload#registerEvents"><a href=
"LuCI.ui.FileUpload.html#registerEvents">registerEvents
</a></li>
1407 <li data-name=
"LuCI.ui.FileUpload#render"><a href=
"LuCI.ui.FileUpload.html#render">render
</a></li>
1409 <li data-name=
"LuCI.ui.FileUpload#setChangeEvents"><a href=
"LuCI.ui.FileUpload.html#setChangeEvents">setChangeEvents
</a></li>
1411 <li data-name=
"LuCI.ui.FileUpload#setUpdateEvents"><a href=
"LuCI.ui.FileUpload.html#setUpdateEvents">setUpdateEvents
</a></li>
1413 <li data-name=
"LuCI.ui.FileUpload#setValue"><a href=
"LuCI.ui.FileUpload.html#setValue">setValue
</a></li>
1415 <li data-name=
"LuCI.ui.FileUpload#triggerValidation"><a href=
"LuCI.ui.FileUpload.html#triggerValidation">triggerValidation
</a></li>
1418 <ul class=
"events itemMembers">
1423 <li class=
"item" data-name=
"LuCI.ui.Hiddenfield">
1424 <span class=
"title">
1425 <a href=
"LuCI.ui.Hiddenfield.html">LuCI.ui.Hiddenfield
</a>
1428 <ul class=
"members itemMembers">
1431 <ul class=
"typedefs itemMembers">
1434 <ul class=
"typedefs itemMembers">
1437 <ul class=
"methods itemMembers">
1439 <span class=
"subtitle">Methods
</span>
1441 <li data-name=
"LuCI.ui.Hiddenfield#getValue"><a href=
"LuCI.ui.Hiddenfield.html#getValue">getValue
</a></li>
1443 <li data-name=
"LuCI.ui.Hiddenfield#isValid"><a href=
"LuCI.ui.Hiddenfield.html#isValid">isValid
</a></li>
1445 <li data-name=
"LuCI.ui.Hiddenfield#registerEvents"><a href=
"LuCI.ui.Hiddenfield.html#registerEvents">registerEvents
</a></li>
1447 <li data-name=
"LuCI.ui.Hiddenfield#render"><a href=
"LuCI.ui.Hiddenfield.html#render">render
</a></li>
1449 <li data-name=
"LuCI.ui.Hiddenfield#setChangeEvents"><a href=
"LuCI.ui.Hiddenfield.html#setChangeEvents">setChangeEvents
</a></li>
1451 <li data-name=
"LuCI.ui.Hiddenfield#setUpdateEvents"><a href=
"LuCI.ui.Hiddenfield.html#setUpdateEvents">setUpdateEvents
</a></li>
1453 <li data-name=
"LuCI.ui.Hiddenfield#setValue"><a href=
"LuCI.ui.Hiddenfield.html#setValue">setValue
</a></li>
1455 <li data-name=
"LuCI.ui.Hiddenfield#triggerValidation"><a href=
"LuCI.ui.Hiddenfield.html#triggerValidation">triggerValidation
</a></li>
1458 <ul class=
"events itemMembers">
1463 <li class=
"item" data-name=
"LuCI.ui.Select">
1464 <span class=
"title">
1465 <a href=
"LuCI.ui.Select.html">LuCI.ui.Select
</a>
1468 <ul class=
"members itemMembers">
1471 <ul class=
"typedefs itemMembers">
1473 <span class=
"subtitle">Typedefs
</span>
1475 <li data-name=
"LuCI.ui.Select.InitOptions"><a href=
"LuCI.ui.Select.html#.InitOptions">InitOptions
</a></li>
1478 <ul class=
"typedefs itemMembers">
1481 <ul class=
"methods itemMembers">
1483 <span class=
"subtitle">Methods
</span>
1485 <li data-name=
"LuCI.ui.Select#getValue"><a href=
"LuCI.ui.Select.html#getValue">getValue
</a></li>
1487 <li data-name=
"LuCI.ui.Select#isValid"><a href=
"LuCI.ui.Select.html#isValid">isValid
</a></li>
1489 <li data-name=
"LuCI.ui.Select#registerEvents"><a href=
"LuCI.ui.Select.html#registerEvents">registerEvents
</a></li>
1491 <li data-name=
"LuCI.ui.Select#render"><a href=
"LuCI.ui.Select.html#render">render
</a></li>
1493 <li data-name=
"LuCI.ui.Select#setChangeEvents"><a href=
"LuCI.ui.Select.html#setChangeEvents">setChangeEvents
</a></li>
1495 <li data-name=
"LuCI.ui.Select#setUpdateEvents"><a href=
"LuCI.ui.Select.html#setUpdateEvents">setUpdateEvents
</a></li>
1497 <li data-name=
"LuCI.ui.Select#setValue"><a href=
"LuCI.ui.Select.html#setValue">setValue
</a></li>
1499 <li data-name=
"LuCI.ui.Select#triggerValidation"><a href=
"LuCI.ui.Select.html#triggerValidation">triggerValidation
</a></li>
1502 <ul class=
"events itemMembers">
1507 <li class=
"item" data-name=
"LuCI.ui.tabs">
1508 <span class=
"title">
1509 <a href=
"LuCI.ui.tabs.html">LuCI.ui.tabs
</a>
1512 <ul class=
"members itemMembers">
1515 <ul class=
"typedefs itemMembers">
1518 <ul class=
"typedefs itemMembers">
1521 <ul class=
"methods itemMembers">
1523 <span class=
"subtitle">Methods
</span>
1525 <li data-name=
"LuCI.ui.tabs#initTabGroup"><a href=
"LuCI.ui.tabs.html#initTabGroup">initTabGroup
</a></li>
1527 <li data-name=
"LuCI.ui.tabs#isEmptyPane"><a href=
"LuCI.ui.tabs.html#isEmptyPane">isEmptyPane
</a></li>
1530 <ul class=
"events itemMembers">
1535 <li class=
"item" data-name=
"LuCI.ui.Textarea">
1536 <span class=
"title">
1537 <a href=
"LuCI.ui.Textarea.html">LuCI.ui.Textarea
</a>
1540 <ul class=
"members itemMembers">
1543 <ul class=
"typedefs itemMembers">
1545 <span class=
"subtitle">Typedefs
</span>
1547 <li data-name=
"LuCI.ui.Textarea.InitOptions"><a href=
"LuCI.ui.Textarea.html#.InitOptions">InitOptions
</a></li>
1550 <ul class=
"typedefs itemMembers">
1553 <ul class=
"methods itemMembers">
1555 <span class=
"subtitle">Methods
</span>
1557 <li data-name=
"LuCI.ui.Textarea#getValue"><a href=
"LuCI.ui.Textarea.html#getValue">getValue
</a></li>
1559 <li data-name=
"LuCI.ui.Textarea#isValid"><a href=
"LuCI.ui.Textarea.html#isValid">isValid
</a></li>
1561 <li data-name=
"LuCI.ui.Textarea#registerEvents"><a href=
"LuCI.ui.Textarea.html#registerEvents">registerEvents
</a></li>
1563 <li data-name=
"LuCI.ui.Textarea#render"><a href=
"LuCI.ui.Textarea.html#render">render
</a></li>
1565 <li data-name=
"LuCI.ui.Textarea#setChangeEvents"><a href=
"LuCI.ui.Textarea.html#setChangeEvents">setChangeEvents
</a></li>
1567 <li data-name=
"LuCI.ui.Textarea#setUpdateEvents"><a href=
"LuCI.ui.Textarea.html#setUpdateEvents">setUpdateEvents
</a></li>
1569 <li data-name=
"LuCI.ui.Textarea#setValue"><a href=
"LuCI.ui.Textarea.html#setValue">setValue
</a></li>
1571 <li data-name=
"LuCI.ui.Textarea#triggerValidation"><a href=
"LuCI.ui.Textarea.html#triggerValidation">triggerValidation
</a></li>
1574 <ul class=
"events itemMembers">
1579 <li class=
"item" data-name=
"LuCI.ui.Textfield">
1580 <span class=
"title">
1581 <a href=
"LuCI.ui.Textfield.html">LuCI.ui.Textfield
</a>
1584 <ul class=
"members itemMembers">
1587 <ul class=
"typedefs itemMembers">
1589 <span class=
"subtitle">Typedefs
</span>
1591 <li data-name=
"LuCI.ui.Textfield.InitOptions"><a href=
"LuCI.ui.Textfield.html#.InitOptions">InitOptions
</a></li>
1594 <ul class=
"typedefs itemMembers">
1597 <ul class=
"methods itemMembers">
1599 <span class=
"subtitle">Methods
</span>
1601 <li data-name=
"LuCI.ui.Textfield#getValue"><a href=
"LuCI.ui.Textfield.html#getValue">getValue
</a></li>
1603 <li data-name=
"LuCI.ui.Textfield#isValid"><a href=
"LuCI.ui.Textfield.html#isValid">isValid
</a></li>
1605 <li data-name=
"LuCI.ui.Textfield#registerEvents"><a href=
"LuCI.ui.Textfield.html#registerEvents">registerEvents
</a></li>
1607 <li data-name=
"LuCI.ui.Textfield#render"><a href=
"LuCI.ui.Textfield.html#render">render
</a></li>
1609 <li data-name=
"LuCI.ui.Textfield#setChangeEvents"><a href=
"LuCI.ui.Textfield.html#setChangeEvents">setChangeEvents
</a></li>
1611 <li data-name=
"LuCI.ui.Textfield#setUpdateEvents"><a href=
"LuCI.ui.Textfield.html#setUpdateEvents">setUpdateEvents
</a></li>
1613 <li data-name=
"LuCI.ui.Textfield#setValue"><a href=
"LuCI.ui.Textfield.html#setValue">setValue
</a></li>
1615 <li data-name=
"LuCI.ui.Textfield#triggerValidation"><a href=
"LuCI.ui.Textfield.html#triggerValidation">triggerValidation
</a></li>
1618 <ul class=
"events itemMembers">
1623 <li class=
"item" data-name=
"LuCI.view">
1624 <span class=
"title">
1625 <a href=
"LuCI.view.html">LuCI.view
</a>
1628 <ul class=
"members itemMembers">
1631 <ul class=
"typedefs itemMembers">
1634 <ul class=
"typedefs itemMembers">
1637 <ul class=
"methods itemMembers">
1639 <span class=
"subtitle">Methods
</span>
1641 <li data-name=
"LuCI.view#addFooter"><a href=
"LuCI.view.html#addFooter">addFooter
</a></li>
1643 <li data-name=
"LuCI.view#handleReset"><a href=
"LuCI.view.html#handleReset">handleReset
</a></li>
1645 <li data-name=
"LuCI.view#handleSave"><a href=
"LuCI.view.html#handleSave">handleSave
</a></li>
1647 <li data-name=
"LuCI.view#handleSaveApply"><a href=
"LuCI.view.html#handleSaveApply">handleSaveApply
</a></li>
1649 <li data-name=
"LuCI.view#load"><a href=
"LuCI.view.html#load">load
</a></li>
1651 <li data-name=
"LuCI.view#render"><a href=
"LuCI.view.html#render">render
</a></li>
1654 <ul class=
"events itemMembers">
1659 <li class=
"item" data-name=
"LuCI.xhr">
1660 <span class=
"title">
1661 <a href=
"LuCI.xhr.html">LuCI.xhr
</a>
1664 <ul class=
"members itemMembers">
1667 <ul class=
"typedefs itemMembers">
1670 <ul class=
"typedefs itemMembers">
1673 <ul class=
"methods itemMembers">
1675 <span class=
"subtitle">Methods
</span>
1677 <li data-name=
"LuCI.xhr#abort"><a href=
"LuCI.xhr.html#abort">abort
</a></li>
1679 <li data-name=
"LuCI.xhr#busy"><a href=
"LuCI.xhr.html#busy">busy
</a></li>
1681 <li data-name=
"LuCI.xhr#cancel"><a href=
"LuCI.xhr.html#cancel">cancel
</a></li>
1683 <li data-name=
"LuCI.xhr#get"><a href=
"LuCI.xhr.html#get">get
</a></li>
1685 <li data-name=
"LuCI.xhr#post"><a href=
"LuCI.xhr.html#post">post
</a></li>
1687 <li data-name=
"LuCI.xhr#send_form"><a href=
"LuCI.xhr.html#send_form">send_form
</a></li>
1690 <ul class=
"events itemMembers">
1698 <h1 class=
"page-title" data-filename=
"rpc.js.html">Source: rpc.js
</h1>
1705 <pre id=
"source-code" class=
"prettyprint source "><code>'use strict';
1706 'require baseclass';
1709 var rpcRequestID =
1,
1710 rpcSessionID = L.env.sessionid || '
00000000000000000000000000000000',
1711 rpcBaseURL = L.url('admin/ubus'),
1712 rpcInterceptorFns = [];
1720 * The `LuCI.rpc` class provides high level ubus JSON-RPC abstractions
1721 * and means for listing and invoking remove RPC methods.
1723 return baseclass.extend(/** @lends LuCI.rpc.prototype */ {
1725 call: function(req, cb, nobatch) {
1728 if (Array.isArray(req)) {
1729 if (req.length ==
0)
1730 return Promise.resolve([]);
1732 for (var i =
0; i
< req.length; i++)
1734 q += '%s%s.%s'.format(
1740 else if (req.params) {
1741 q += '/%s.%s'.format(req.params[
1], req.params[
2]);
1744 return request.post(rpcBaseURL + q, req, {
1745 timeout: (L.env.rpctimeout ||
20) *
1000,
1751 parseCallReply: function(req, res) {
1754 if (res instanceof Error)
1755 return req.reject(res);
1759 L.raise('RPCError', 'RPC call to %s/%s failed with HTTP error %d: %s',
1760 req.object, req.method, res.status, res.statusText || '?');
1765 return req.reject(e);
1769 * The interceptor args are intentionally swapped.
1770 * Response is passed as first arg to align with Request class interceptors
1772 Promise.all(rpcInterceptorFns.map(function(fn) { return fn(msg, req) }))
1773 .then(this.handleCallReply.bind(this, req, msg))
1777 handleCallReply: function(req, msg) {
1778 var type = Object.prototype.toString,
1782 /* verify message frame */
1783 if (!L.isObject(msg) || msg.jsonrpc != '
2.0')
1784 L.raise('RPCError', 'RPC call to %s/%s returned invalid message frame',
1785 req.object, req.method);
1787 /* check error condition */
1788 if (L.isObject(msg.error)
&& msg.error.code
&& msg.error.message)
1789 L.raise('RPCError', 'RPC call to %s/%s failed with error %d: %s',
1790 req.object, req.method, msg.error.code, msg.error.message || '?');
1793 return req.reject(e);
1796 if (!req.object
&& !req.method) {
1799 else if (Array.isArray(msg.result)) {
1800 ret = (msg.result.length
> 1) ? msg.result[
1] : msg.result[
0];
1804 for (var key in req.expect) {
1805 if (ret != null
&& key != '')
1808 if (ret == null || type.call(ret) != type.call(req.expect[key]))
1809 ret = req.expect[key];
1816 if (typeof(req.filter) == 'function') {
1818 req.priv[
1] = req.params;
1819 ret = req.filter.apply(this, req.priv);
1826 * Lists available remote ubus objects or the method signatures of
1829 * This function has two signatures and is sensitive to the number of
1830 * arguments passed to it:
1832 * Returns an array containing the names of all remote `ubus` objects
1833 * - `list(
"objname", ...)`
1834 * Returns method signatures for each given `ubus` object name.
1836 * @param {...string} [objectNames]
1837 * If any object names are given, this function will return the method
1838 * signatures of each given object.
1840 * @returns {Promise
<Array
<string
>|Object
<string, Object
<string, Object
<string, string
>>>>}
1841 * When invoked without arguments, this function will return a promise
1842 * resolving to an array of `ubus` object names. When invoked with one or
1843 * more arguments, a promise resolving to an object describing the method
1844 * signatures of each requested `ubus` object name will be returned.
1851 params: arguments.length ? this.varargs(arguments) : undefined
1854 return new Promise(L.bind(function(resolveFn, rejectFn) {
1855 /* store request info */
1862 this.call(msg, this.parseCallReply.bind(this, req));
1867 * @typedef {Object} DeclareOptions
1868 * @memberof LuCI.rpc
1870 * @property {string} object
1871 * The name of the remote `ubus` object to invoke.
1873 * @property {string} method
1874 * The name of the remote `ubus` method to invoke.
1876 * @property {string[]} [params]
1877 * Lists the named parameters expected by the remote `ubus` RPC method.
1878 * The arguments passed to the resulting generated method call function
1879 * will be mapped to named parameters in the order they appear in this
1882 * Extraneous parameters passed to the generated function will not be
1883 * sent to the remote procedure but are passed to the
1884 * {@link LuCI.rpc~filterFn filter function} if one is specified.
1887 * - `params: [
"foo",
"bar" ]` -
1888 * When the resulting call function is invoked with `fn(true, false)`,
1889 * the corresponding args object sent to the remote procedure will be
1890 * `{ foo: true, bar: false }`.
1891 * - `params: [
"test" ], filter: function(reply, args, extra) { ... }` -
1892 * When the resultung generated function is invoked with
1893 * `fn(
"foo",
"bar",
"baz")` then `{
"test":
"foo" }` will be sent as
1894 * argument to the remote procedure and the filter function will be
1895 * invoked with `filterFn(reply, [
"foo" ],
"bar",
"baz")`
1897 * @property {Object
<string,*
>} [expect]
1898 * Describes the expected return data structure. The given object is
1899 * supposed to contain a single key selecting the value to use from
1900 * the returned `ubus` reply object. The value of the sole key within
1901 * the `expect` object is used to infer the expected type of the received
1902 * `ubus` reply data.
1904 * If the received data does not contain `expect`'s key, or if the
1905 * type of the data differs from the type of the value in the expect
1906 * object, the expect object's value is returned as default instead.
1908 * The key in the `expect` object may be an empty string (`''`) in which
1909 * case the entire reply object is selected instead of one of its subkeys.
1911 * If the `expect` option is omitted, the received reply will be returned
1912 * as-is, regardless of its format or type.
1915 * - `expect: { '': { error: 'Invalid response' } }` -
1916 * This requires the entire `ubus` reply to be a plain JavaScript
1917 * object. If the reply isn't an object but e.g. an array or a numeric
1918 * error code instead, it will get replaced with
1919 * `{ error: 'Invalid response' }` instead.
1920 * - `expect: { results: [] }` -
1921 * This requires the received `ubus` reply to be an object containing
1922 * a key `results` with an array as value. If the received reply does
1923 * not contain such a key, or if `reply.results` points to a non-array
1924 * value, the empty array (`[]`) will be used instead.
1925 * - `expect: { success: false }` -
1926 * This requires the received `ubus` reply to be an object containing
1927 * a key `success` with a boolean value. If the reply does not contain
1928 * `success` or if `reply.success` is not a boolean value, `false` will
1929 * be returned as default instead.
1931 * @property {LuCI.rpc~filterFn} [filter]
1932 * Specfies an optional filter function which is invoked to transform the
1933 * received reply data before it is returned to the caller.
1938 * The filter function is invoked to transform a received `ubus` RPC call
1939 * reply before returning it to the caller.
1941 * @callback LuCI.rpc~filterFn
1944 * The received `ubus` reply data or a subset of it as described in the
1945 * `expect` option of the RPC call declaration. In case of remote call
1946 * errors, `data` is numeric `ubus` error code instead.
1948 * @param {Array
<*
>} args
1949 * The arguments the RPC method has been invoked with.
1951 * @param {...*} extraArgs
1952 * All extraneous arguments passed to the RPC method exceeding the number
1953 * of arguments describes in the RPC call declaration.
1956 * The return value of the filter function will be returned to the caller
1957 * of the RPC method as-is.
1961 * The generated invocation function is returned by
1962 * {@link LuCI.rpc#declare rpc.declare()} and encapsulates a single
1965 * Calling this function will execute a remote `ubus` HTTP call request
1966 * using the arguments passed to it as arguments and return a promise
1967 * resolving to the received reply values.
1969 * @callback LuCI.rpc~invokeFn
1971 * @param {...*} params
1972 * The parameters to pass to the remote procedure call. The given
1973 * positional arguments will be named to named RPC parameters according
1974 * to the names specified in the `params` array of the method declaration.
1976 * Any additional parameters exceeding the amount of arguments in the
1977 * `params` declaration are passed as private extra arguments to the
1978 * declared filter function.
1980 * @return {Promise
<*
>}
1981 * Returns a promise resolving to the result data of the remote `ubus`
1982 * RPC method invocation, optionally substituted and filtered according
1983 * to the `expect` and `filter` declarations.
1987 * Describes a remote RPC call procedure and returns a function
1990 * @param {LuCI.rpc.DeclareOptions} options
1991 * If any object names are given, this function will return the method
1992 * signatures of each given object.
1994 * @returns {LuCI.rpc~invokeFn}
1995 * Returns a new function implementing the method call described in
1998 declare: function(options) {
1999 return Function.prototype.bind.call(function(rpc, options) {
2000 var args = this.varargs(arguments,
2);
2001 return new Promise(function(resolveFn, rejectFn) {
2002 /* build parameter object */
2005 if (Array.isArray(options.params))
2006 for (p_off =
0; p_off
< options.params.length; p_off++)
2007 params[options.params[p_off]] = args[p_off];
2009 /* all remaining arguments are private args */
2010 var priv = [ undefined, undefined ];
2011 for (; p_off
< args.length; p_off++)
2012 priv.push(args[p_off]);
2014 /* store request info */
2016 expect: options.expect,
2017 filter: options.filter,
2022 object: options.object,
2023 method: options.method
2026 /* build message object */
2040 rpc.call(msg, rpc.parseCallReply.bind(rpc, req), options.nobatch);
2042 }, this, this, options);
2046 * Returns the current RPC session id.
2049 * Returns the
32 byte session ID string used for authenticating remote
2052 getSessionID: function() {
2053 return rpcSessionID;
2057 * Set the RPC session id to use.
2059 * @param {string} sid
2060 * Sets the
32 byte session ID string used for authenticating remote
2063 setSessionID: function(sid) {
2068 * Returns the current RPC base URL.
2071 * Returns the RPC URL endpoint to issue requests against.
2073 getBaseURL: function() {
2078 * Set the RPC base URL to use.
2080 * @param {string} sid
2081 * Sets the RPC URL endpoint to issue requests against.
2083 setBaseURL: function(url) {
2088 * Translates a numeric `ubus` error code into a human readable
2091 * @param {number} statusCode
2092 * The numeric status code.
2095 * Returns the textual description of the code.
2097 getStatusText: function(statusCode) {
2098 switch (statusCode) {
2099 case
0: return _('Command OK');
2100 case
1: return _('Invalid command');
2101 case
2: return _('Invalid argument');
2102 case
3: return _('Method not found');
2103 case
4: return _('Resource not found');
2104 case
5: return _('No data received');
2105 case
6: return _('Permission denied');
2106 case
7: return _('Request timeout');
2107 case
8: return _('Not supported');
2108 case
9: return _('Unspecified error');
2109 case
10: return _('Connection lost');
2110 default: return _('Unknown error code');
2115 * Registered interceptor functions are invoked before the standard reply
2116 * parsing and handling logic.
2118 * By returning rejected promises, interceptor functions can cause the
2119 * invocation function to fail, regardless of the received reply.
2121 * Interceptors may also modify their message argument in-place to
2122 * rewrite received replies before they're processed by the standard
2123 * response handling code.
2125 * A common use case for such functions is to detect failing RPC replies
2126 * due to expired authentication in order to trigger a new login.
2128 * @callback LuCI.rpc~interceptorFn
2131 * The unprocessed, JSON decoded remote RPC method call reply.
2133 * Since interceptors run before the standard parsing logic, the reply
2134 * data is not verified for correctness or filtered according to
2135 * `expect` and `filter` specifications in the declarations.
2137 * @param {Object} req
2138 * The related request object which is an extended variant of the
2139 * declaration object, allowing access to internals of the invocation
2140 * function such as `filter`, `expect` or `params` values.
2142 * @return {Promise
<*
>|*}
2143 * Interceptor functions may return a promise to defer response
2144 * processing until some delayed work completed. Any values the returned
2145 * promise resolves to are ignored.
2147 * When the returned promise rejects with an error, the invocation
2148 * function will fail too, forwarding the error to the caller.
2152 * Registers a new interceptor function.
2154 * @param {LuCI.rpc~interceptorFn} interceptorFn
2155 * The inteceptor function to register.
2157 * @returns {LuCI.rpc~interceptorFn}
2158 * Returns the given function value.
2160 addInterceptor: function(interceptorFn) {
2161 if (typeof(interceptorFn) == 'function')
2162 rpcInterceptorFns.push(interceptorFn);
2163 return interceptorFn;
2167 * Removes a registered interceptor function.
2169 * @param {LuCI.rpc~interceptorFn} interceptorFn
2170 * The inteceptor function to remove.
2172 * @returns {boolean}
2173 * Returns `true` if the given function has been removed or `false`
2174 * if it has not been found.
2176 removeInterceptor: function(interceptorFn) {
2177 var oldlen = rpcInterceptorFns.length, i = oldlen;
2179 if (rpcInterceptorFns[i] === interceptorFn)
2180 rpcInterceptorFns.splice(i,
1);
2181 return (rpcInterceptorFns.length
< oldlen);
2196 Documentation generated by
<a href=
"https://github.com/jsdoc3/jsdoc">JSDoc
3.6.3</a> on Fri Apr
03 2020 13:
28:
08 GMT+
0200 (Central European Summer Time)
2200 <script>prettyPrint();
</script>
2201 <script src=
"scripts/jaguar.js"></script>