summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--docs/jsapi/LuCI.Class.html20
-rw-r--r--docs/jsapi/LuCI.Headers.html16
-rw-r--r--docs/jsapi/LuCI.Network.Device.html56
-rw-r--r--docs/jsapi/LuCI.Network.Hosts.html28
-rw-r--r--docs/jsapi/LuCI.Network.Protocol.html88
-rw-r--r--docs/jsapi/LuCI.Network.WifiDevice.html38
-rw-r--r--docs/jsapi/LuCI.Network.WifiNetwork.html86
-rw-r--r--docs/jsapi/LuCI.Network.html70
-rw-r--r--docs/jsapi/LuCI.Poll.html22
-rw-r--r--docs/jsapi/LuCI.Request.html65
-rw-r--r--docs/jsapi/LuCI.Request.poll.html24
-rw-r--r--docs/jsapi/LuCI.Response.html118
-rw-r--r--docs/jsapi/LuCI.XHR.html24
-rw-r--r--docs/jsapi/LuCI.dom.html40
-rw-r--r--docs/jsapi/LuCI.fs.html508
-rw-r--r--docs/jsapi/LuCI.html207
-rw-r--r--docs/jsapi/LuCI.rpc.html10
-rw-r--r--docs/jsapi/LuCI.uci.html10
-rw-r--r--docs/jsapi/LuCI.view.html24
-rw-r--r--docs/jsapi/fs.js.html138
-rw-r--r--docs/jsapi/index.html10
-rw-r--r--docs/jsapi/luci.js.html131
-rw-r--r--docs/jsapi/network.js.html18
-rw-r--r--docs/jsapi/rpc.js.html10
-rw-r--r--docs/jsapi/uci.js.html10
25 files changed, 1479 insertions, 292 deletions
diff --git a/docs/jsapi/LuCI.Class.html b/docs/jsapi/LuCI.Class.html
index 428e53576..e1efc4a9a 100644
--- a/docs/jsapi/LuCI.Class.html
+++ b/docs/jsapi/LuCI.Class.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1339,7 +1347,7 @@ class constructor and can be instantiated with <code>new</code>.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line169">line 169</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line170">line 170</a>
</div>
</div>
@@ -1526,7 +1534,7 @@ enable inheritance.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line195">line 195</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line196">line 196</a>
</div>
</div>
@@ -1673,7 +1681,7 @@ a subclass of this class'.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line145">line 145</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line146">line 146</a>
</div>
</div>
@@ -1865,7 +1873,7 @@ enable inheritance.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line267">line 267</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line268">line 268</a>
</div>
</div>
@@ -2095,7 +2103,7 @@ superclass method returned <code>null</code>.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line225">line 225</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line226">line 226</a>
</div>
</div>
@@ -2318,7 +2326,7 @@ and the values extracted from the <code>args</code> array beginning with
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:05 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.Headers.html b/docs/jsapi/LuCI.Headers.html
index f23a6507b..d19075b5e 100644
--- a/docs/jsapi/LuCI.Headers.html
+++ b/docs/jsapi/LuCI.Headers.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1103,7 +1111,7 @@ response objects using the <code>response.headers</code> property.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line324">line 324</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line339">line 339</a>
</div>
</div>
@@ -1188,7 +1196,7 @@ response objects using the <code>response.headers</code> property.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line363">line 363</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line378">line 378</a>
</div>
</div>
@@ -1337,7 +1345,7 @@ Note: Header-Names are case-insensitive.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line347">line 347</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line362">line 362</a>
</div>
</div>
@@ -1491,7 +1499,7 @@ Note: Header-Names are case-insensitive.</p>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.Network.Device.html b/docs/jsapi/LuCI.Network.Device.html
index 436fb0aeb..eec9069b9 100644
--- a/docs/jsapi/LuCI.Network.Device.html
+++ b/docs/jsapi/LuCI.Network.Device.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1103,7 +1111,7 @@ device and allows querying device details such as packet statistics or MTU.</p><
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2649">line 2649</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2653">line 2653</a>
</div>
</div>
@@ -1188,7 +1196,7 @@ device and allows querying device details such as packet statistics or MTU.</p><
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2856">line 2856</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2860">line 2860</a>
</div>
</div>
@@ -1292,7 +1300,7 @@ device is not a Linux bridge.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2868">line 2868</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2872">line 2872</a>
</div>
</div>
@@ -1393,7 +1401,7 @@ enabled, else <code>false</code>.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2783">line 2783</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2787">line 2787</a>
</div>
</div>
@@ -1494,7 +1502,7 @@ for non-wifi devices or operation mode and ssid for wifi ones.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2727">line 2727</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2731">line 2731</a>
</div>
</div>
@@ -1594,7 +1602,7 @@ for non-wifi devices or operation mode and ssid for wifi ones.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2716">line 2716</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2720">line 2720</a>
</div>
</div>
@@ -1694,7 +1702,7 @@ for non-wifi devices or operation mode and ssid for wifi ones.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2695">line 2695</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2699">line 2699</a>
</div>
</div>
@@ -1798,7 +1806,7 @@ e.g. for non-ethernet tunnel devices.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2706">line 2706</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2710">line 2710</a>
</div>
</div>
@@ -1898,7 +1906,7 @@ e.g. for non-ethernet tunnel devices.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2684">line 2684</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2688">line 2688</a>
</div>
</div>
@@ -1998,7 +2006,7 @@ e.g. for non-ethernet tunnel devices.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2963">line 2963</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2967">line 2967</a>
</div>
</div>
@@ -2103,7 +2111,7 @@ assigned to any logical interface.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2974">line 2974</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2978">line 2978</a>
</div>
</div>
@@ -2204,7 +2212,7 @@ logical interfaces this device is assigned to.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2834">line 2834</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2838">line 2838</a>
</div>
</div>
@@ -2309,7 +2317,7 @@ a Linux bridge.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2928">line 2928</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2932">line 2932</a>
</div>
</div>
@@ -2409,7 +2417,7 @@ a Linux bridge.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2950">line 2950</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2954">line 2954</a>
</div>
</div>
@@ -2509,7 +2517,7 @@ a Linux bridge.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2769">line 2769</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2773">line 2773</a>
</div>
</div>
@@ -2610,7 +2618,7 @@ the operation mode and SSID for wifi devices.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2917">line 2917</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2921">line 2921</a>
</div>
</div>
@@ -2710,7 +2718,7 @@ the operation mode and SSID for wifi devices.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2939">line 2939</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2943">line 2943</a>
</div>
</div>
@@ -2810,7 +2818,7 @@ the operation mode and SSID for wifi devices.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2745">line 2745</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2749">line 2749</a>
</div>
</div>
@@ -2919,7 +2927,7 @@ the operation mode and SSID for wifi devices.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2801">line 2801</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2805">line 2805</a>
</div>
</div>
@@ -3020,7 +3028,7 @@ the operation mode and SSID for wifi devices.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2998">line 2998</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3002">line 3002</a>
</div>
</div>
@@ -3125,7 +3133,7 @@ is not a wireless device.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2896">line 2896</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2900">line 2900</a>
</div>
</div>
@@ -3226,7 +3234,7 @@ else <code>false</code>.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2907">line 2907</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2911">line 2911</a>
</div>
</div>
@@ -3327,7 +3335,7 @@ else <code>false</code>.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2880">line 2880</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2884">line 2884</a>
</div>
</div>
@@ -3436,7 +3444,7 @@ when it is down or absent.</td>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.Network.Hosts.html b/docs/jsapi/LuCI.Network.Hosts.html
index ce99197ae..9af4dec9f 100644
--- a/docs/jsapi/LuCI.Network.Hosts.html
+++ b/docs/jsapi/LuCI.Network.Hosts.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1104,7 +1112,7 @@ host information by different criteria.</p></div>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1684">line 1684</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1688">line 1688</a>
</div>
</div>
@@ -1189,7 +1197,7 @@ host information by different criteria.</p></div>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1781">line 1781</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1785">line 1785</a>
</div>
</div>
@@ -1339,7 +1347,7 @@ the corresponding host.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1745">line 1745</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1749">line 1749</a>
</div>
</div>
@@ -1489,7 +1497,7 @@ the corresponding host.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1700">line 1700</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1704">line 1704</a>
</div>
</div>
@@ -1639,7 +1647,7 @@ the corresponding host.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1730">line 1730</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1734">line 1734</a>
</div>
</div>
@@ -1789,7 +1797,7 @@ the corresponding host.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1715">line 1715</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1719">line 1719</a>
</div>
</div>
@@ -1939,7 +1947,7 @@ the corresponding host.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1799">line 1799</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1803">line 1803</a>
</div>
</div>
@@ -2089,7 +2097,7 @@ the corresponding host.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1763">line 1763</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1767">line 1767</a>
</div>
</div>
@@ -2239,7 +2247,7 @@ the corresponding host.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1827">line 1827</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1831">line 1831</a>
</div>
</div>
@@ -2417,7 +2425,7 @@ is used as hint.</td>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.Network.Protocol.html b/docs/jsapi/LuCI.Network.Protocol.html
index 76aac1dff..d6dd78cb8 100644
--- a/docs/jsapi/LuCI.Network.Protocol.html
+++ b/docs/jsapi/LuCI.Network.Protocol.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1103,7 +1111,7 @@ subclasses which describe logical UCI networks defined by <code>config interface
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1850">line 1850</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1854">line 1854</a>
</div>
</div>
@@ -1188,7 +1196,7 @@ subclasses which describe logical UCI networks defined by <code>config interface
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2439">line 2439</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2443">line 2443</a>
</div>
</div>
@@ -1349,7 +1357,7 @@ interface or if the logical interface is virtual.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2608">line 2608</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2612">line 2612</a>
</div>
</div>
@@ -1510,7 +1518,7 @@ device or <code>false</code> if not.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2466">line 2466</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2470">line 2470</a>
</div>
</div>
@@ -1671,7 +1679,7 @@ interface or if the logical interface is virtual.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1883">line 1883</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1887">line 1887</a>
</div>
</div>
@@ -1823,7 +1831,7 @@ not found.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2493">line 2493</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2497">line 2497</a>
</div>
</div>
@@ -1925,7 +1933,7 @@ expected Linux network device according to the configuration.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2554">line 2554</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2558">line 2558</a>
</div>
</div>
@@ -2032,7 +2040,7 @@ virtual and not a bridge.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2208">line 2208</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2212">line 2212</a>
</div>
</div>
@@ -2133,7 +2141,7 @@ protocol backend.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2120">line 2120</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2124">line 2124</a>
</div>
</div>
@@ -2234,7 +2242,7 @@ protocol backend.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2252">line 2252</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2256">line 2256</a>
</div>
</div>
@@ -2342,7 +2350,7 @@ error code in case no translation can be found.</p>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2003">line 2003</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2007">line 2007</a>
</div>
</div>
@@ -2446,7 +2454,7 @@ if it isn't applicable to the associated protocol.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2188">line 2188</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2192">line 2192</a>
</div>
</div>
@@ -2548,7 +2556,7 @@ default route or <code>null</code> if no default route was found.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2100">line 2100</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2104">line 2104</a>
</div>
</div>
@@ -2650,7 +2658,7 @@ default route or <code>null</code> if no default route was found.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1948">line 1948</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1952">line 1952</a>
</div>
</div>
@@ -2752,7 +2760,7 @@ default route or <code>null</code> if no default route was found.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1908">line 1908</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1912">line 1912</a>
</div>
</div>
@@ -2856,7 +2864,7 @@ it could not be determined.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2139">line 2139</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2143">line 2143</a>
</div>
</div>
@@ -2960,7 +2968,7 @@ in CIDR notation or <code>null</code> if no IPv6 addresses were set.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2161">line 2161</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2165">line 2165</a>
</div>
</div>
@@ -3062,7 +3070,7 @@ follows the order of the addresses in <code>ubus</code> runtime information.</td
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2227">line 2227</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2231">line 2231</a>
</div>
</div>
@@ -3166,7 +3174,7 @@ handler or <code>null</code> if no prefix is present.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2055">line 2055</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2059">line 2059</a>
</div>
</div>
@@ -3270,7 +3278,7 @@ or <code>null</code> if no IPv4 addresses were set.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2068">line 2068</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2072">line 2072</a>
</div>
</div>
@@ -3372,7 +3380,7 @@ follows the order of the addresses in <code>ubus</code> runtime information.</td
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2526">line 2526</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2530">line 2530</a>
</div>
</div>
@@ -3474,7 +3482,7 @@ network device currently associated with the logical interface.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2539">line 2539</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2543">line 2543</a>
</div>
</div>
@@ -3576,7 +3584,7 @@ network device currently associated with the logical interface.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2023">line 2023</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2027">line 2027</a>
</div>
</div>
@@ -3677,7 +3685,7 @@ routes spawned by the associated logical interface.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1978">line 1978</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1982">line 1982</a>
</div>
</div>
@@ -3777,7 +3785,7 @@ routes spawned by the associated logical interface.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2086">line 2086</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2090">line 2090</a>
</div>
</div>
@@ -3881,7 +3889,7 @@ protocol handler or <code>null</code> if no IPv4 addresses were set.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2292">line 2292</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2296">line 2296</a>
</div>
</div>
@@ -3983,7 +3991,7 @@ function, e.g. <code>odhcp6c</code> for the <code>dhcpv6</code> prototocol.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1934">line 1934</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1938">line 1938</a>
</div>
</div>
@@ -4086,7 +4094,7 @@ function, e.g. <code>odhcp6c</code> for the <code>dhcpv6</code> prototocol.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1968">line 1968</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1972">line 1972</a>
</div>
</div>
@@ -4193,7 +4201,7 @@ interface or <code>null</code> if no <code>type</code> option is set.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1988">line 1988</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1992">line 1992</a>
</div>
</div>
@@ -4293,7 +4301,7 @@ interface or <code>null</code> if no <code>type</code> option is set.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2039">line 2039</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2043">line 2043</a>
</div>
</div>
@@ -4401,7 +4409,7 @@ handler didn't request a zone.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2380">line 2380</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2384">line 2384</a>
</div>
</div>
@@ -4508,7 +4516,7 @@ is an alias or <code>null</code> if it is not an alias interface.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2277">line 2277</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2281">line 2281</a>
</div>
</div>
@@ -4610,7 +4618,7 @@ or <code>false</code> when the logical interface is no bridge.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2365">line 2365</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2369">line 2369</a>
</div>
</div>
@@ -4715,7 +4723,7 @@ or not (<code>false</code>).</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2400">line 2400</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2404">line 2404</a>
</div>
</div>
@@ -4816,7 +4824,7 @@ has no network devices attached.</p>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2349">line 2349</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2353">line 2353</a>
</div>
</div>
@@ -4925,7 +4933,7 @@ or not (<code>false</code>).</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2308">line 2308</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2312">line 2312</a>
</div>
</div>
@@ -5029,7 +5037,7 @@ returns <code>true</code>.</p>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2422">line 2422</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2426">line 2426</a>
</div>
</div>
@@ -5129,7 +5137,7 @@ returns <code>true</code>.</p>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line2328">line 2328</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line2332">line 2332</a>
</div>
</div>
@@ -5236,7 +5244,7 @@ dynamic interfaces (<code>true</code>) or not (<code>false</code>).</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1897">line 1897</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1901">line 1901</a>
</div>
</div>
@@ -5390,7 +5398,7 @@ configuration.</p></td>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.Network.WifiDevice.html b/docs/jsapi/LuCI.Network.WifiDevice.html
index 0dc692901..6373db805 100644
--- a/docs/jsapi/LuCI.Network.WifiDevice.html
+++ b/docs/jsapi/LuCI.Network.WifiDevice.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1104,7 +1112,7 @@ well as methods for enumerating related wireless networks.</p></div>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3013">line 3013</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3017">line 3017</a>
</div>
</div>
@@ -1189,7 +1197,7 @@ well as methods for enumerating related wireless networks.</p></div>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3279">line 3279</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3283">line 3283</a>
</div>
</div>
@@ -1344,7 +1352,7 @@ were invalid.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3304">line 3304</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3308">line 3308</a>
</div>
</div>
@@ -1496,7 +1504,7 @@ with this wireless radio device.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3053">line 3053</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3057">line 3057</a>
</div>
</div>
@@ -1648,7 +1656,7 @@ not found.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3131">line 3131</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3135">line 3135</a>
</div>
</div>
@@ -1759,7 +1767,7 @@ known mode values are:
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3110">line 3110</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3114">line 3114</a>
</div>
</div>
@@ -1869,7 +1877,7 @@ known mode values are:
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3142">line 3142</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3146">line 3146</a>
</div>
</div>
@@ -1969,7 +1977,7 @@ known mode values are:
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3091">line 3091</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3095">line 3095</a>
</div>
</div>
@@ -2071,7 +2079,7 @@ for the wireless phy.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3203">line 3203</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3207">line 3207</a>
</div>
</div>
@@ -2173,7 +2181,7 @@ describing the networks found in the vincinity.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3236">line 3236</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3240">line 3240</a>
</div>
</div>
@@ -2324,7 +2332,7 @@ this radio device.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3255">line 3255</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3259">line 3259</a>
</div>
</div>
@@ -2426,7 +2434,7 @@ radio device.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3079">line 3079</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3083">line 3083</a>
</div>
</div>
@@ -2528,7 +2536,7 @@ UCI configuration.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3214">line 3214</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3218">line 3218</a>
</div>
</div>
@@ -2629,7 +2637,7 @@ runtime state.</p>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3067">line 3067</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3071">line 3071</a>
</div>
</div>
@@ -2783,7 +2791,7 @@ configuration.</p></td>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.Network.WifiNetwork.html b/docs/jsapi/LuCI.Network.WifiNetwork.html
index 478ba8bb9..4b4b7e0bc 100644
--- a/docs/jsapi/LuCI.Network.WifiNetwork.html
+++ b/docs/jsapi/LuCI.Network.WifiNetwork.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1105,7 +1113,7 @@ such networks in parallel.</p></div>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3337">line 3337</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3341">line 3341</a>
</div>
</div>
@@ -1190,7 +1198,7 @@ such networks in parallel.</p></div>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line4080">line 4080</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line4084">line 4084</a>
</div>
</div>
@@ -1461,7 +1469,7 @@ are passed.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3371">line 3371</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3375">line 3375</a>
</div>
</div>
@@ -1613,7 +1621,7 @@ not found.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3624">line 3624</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3628">line 3628</a>
</div>
</div>
@@ -1714,7 +1722,7 @@ information.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3635">line 3635</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3639">line 3639</a>
</div>
</div>
@@ -1815,7 +1823,7 @@ encryption state could not be found in <code>ubus</code> runtime information.</t
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3572">line 3572</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3576">line 3576</a>
</div>
</div>
@@ -1928,7 +1936,7 @@ state. Possible returned values are:
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3593">line 3593</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3597">line 3597</a>
</div>
</div>
@@ -2030,7 +2038,7 @@ translated string.</p>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3613">line 3613</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3617">line 3617</a>
</div>
</div>
@@ -2131,7 +2139,7 @@ information.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3815">line 3815</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3819">line 3819</a>
</div>
</div>
@@ -2232,7 +2240,7 @@ with this network.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3845">line 3845</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3849">line 3849</a>
</div>
</div>
@@ -2338,7 +2346,7 @@ is not available.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3450">line 3450</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3454">line 3454</a>
</div>
</div>
@@ -2441,7 +2449,7 @@ is not available.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3861">line 3861</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3865">line 3865</a>
</div>
</div>
@@ -2545,7 +2553,7 @@ or <code>null</code> if it cannot be determined.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3894">line 3894</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3898">line 3898</a>
</div>
</div>
@@ -2646,7 +2654,7 @@ information or <code>00</code> if it cannot be determined.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line4040">line 4040</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line4044">line 4044</a>
</div>
</div>
@@ -2747,7 +2755,7 @@ device associted with this wireless network.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3827">line 3827</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3831">line 3831</a>
</div>
</div>
@@ -2852,7 +2860,7 @@ available.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3988">line 3988</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3992">line 3992</a>
</div>
</div>
@@ -2955,7 +2963,7 @@ name, depending on which information is available.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3475">line 3475</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3479">line 3479</a>
</div>
</div>
@@ -3058,7 +3066,7 @@ radio and network index numbers.</p>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3497">line 3497</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3501">line 3501</a>
</div>
</div>
@@ -3163,7 +3171,7 @@ associated network device, e.g. when not configured or up.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3437">line 3437</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3441">line 3441</a>
</div>
</div>
@@ -3267,7 +3275,7 @@ is not in mesh mode.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3412">line 3412</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3416">line 3416</a>
</div>
</div>
@@ -3374,7 +3382,7 @@ is not in mesh mode.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3485">line 3485</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3489">line 3489</a>
</div>
</div>
@@ -3474,7 +3482,7 @@ is not in mesh mode.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line4004">line 4004</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line4008">line 4008</a>
</div>
</div>
@@ -3579,7 +3587,7 @@ interface.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3461">line 3461</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3465">line 3465</a>
</div>
</div>
@@ -3680,7 +3688,7 @@ attached to.</p>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line4015">line 4015</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line4019">line 4019</a>
</div>
</div>
@@ -3781,7 +3789,7 @@ logical interfaces this wireless network is attached to.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3883">line 3883</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3887">line 3887</a>
</div>
</div>
@@ -3882,7 +3890,7 @@ information or <code>0</code> if it cannot be determined.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3973">line 3973</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3977">line 3977</a>
</div>
</div>
@@ -3984,7 +3992,7 @@ internal network ID, depending on which information is available.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3872">line 3872</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3876">line 3876</a>
</div>
</div>
@@ -4088,7 +4096,7 @@ information or <code>null</code> if it cannot be determined.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3932">line 3932</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3936">line 3936</a>
</div>
</div>
@@ -4191,7 +4199,7 @@ noise and signal (SNR), divided by 5.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3955">line 3955</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3959">line 3959</a>
</div>
</div>
@@ -4293,7 +4301,7 @@ by <code>ubus</code> runtime state.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3423">line 3423</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3427">line 3427</a>
</div>
</div>
@@ -4397,7 +4405,7 @@ in mesh mode.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3905">line 3905</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3909">line 3909</a>
</div>
</div>
@@ -4501,7 +4509,7 @@ in mesh mode.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3920">line 3920</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3924">line 3924</a>
</div>
</div>
@@ -4605,7 +4613,7 @@ cannot be determined.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3525">line 3525</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3529">line 3529</a>
</div>
</div>
@@ -4710,7 +4718,7 @@ found.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3513">line 3513</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3517">line 3517</a>
</div>
</div>
@@ -4814,7 +4822,7 @@ or <code>null</code> if it cannot be determined.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line4051">line 4051</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line4055">line 4055</a>
</div>
</div>
@@ -4915,7 +4923,7 @@ deauthenticating clients, otherwise <code>false</code>.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3397">line 3397</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3401">line 3401</a>
</div>
</div>
@@ -5017,7 +5025,7 @@ UCI configuration.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3546">line 3546</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3550">line 3550</a>
</div>
</div>
@@ -5122,7 +5130,7 @@ instance.</p>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line3385">line 3385</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line3389">line 3389</a>
</div>
</div>
@@ -5276,7 +5284,7 @@ configuration.</p></td>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.Network.html b/docs/jsapi/LuCI.Network.html
index d8433c5bf..4dd84f333 100644
--- a/docs/jsapi/LuCI.Network.html
+++ b/docs/jsapi/LuCI.Network.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1105,7 +1113,7 @@ current configuration details and to manipulate settings.</p></div>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line645">line 645</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line646">line 646</a>
</div>
</div>
@@ -1209,7 +1217,7 @@ current configuration details and to manipulate settings.</p></div>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line901">line 901</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line902">line 902</a>
</div>
</div>
@@ -1396,7 +1404,7 @@ existed.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1350">line 1350</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1354">line 1354</a>
</div>
</div>
@@ -1546,7 +1554,7 @@ were invalid or if the associated radio device could not be found.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line979">line 979</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line980">line 980</a>
</div>
</div>
@@ -1694,7 +1702,7 @@ references to it were successfully deleted from the configuration or
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1388">line 1388</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1392">line 1392</a>
</div>
</div>
@@ -1844,7 +1852,7 @@ be found.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line745">line 745</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line746">line 746</a>
</div>
</div>
@@ -1945,7 +1953,7 @@ from the remote <code>ubus</code> apis.</p>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line736">line 736</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line737">line 737</a>
</div>
</div>
@@ -2096,7 +2104,7 @@ or <code>WPA3 SAE (CCMP)</code>.</p>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1104">line 1104</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1105">line 1105</a>
</div>
</div>
@@ -2244,7 +2252,7 @@ be found.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1127">line 1127</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1128">line 1128</a>
</div>
</div>
@@ -2345,7 +2353,7 @@ instances describing the network devices found on the system.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1650">line 1650</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1654">line 1654</a>
</div>
</div>
@@ -2446,7 +2454,7 @@ instances describing the network devices found on the system.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1667">line 1667</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1671">line 1671</a>
</div>
</div>
@@ -2550,7 +2558,7 @@ class instance describing the found hosts.</p>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1639">line 1639</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1643">line 1643</a>
</div>
</div>
@@ -2711,7 +2719,7 @@ object could not be converted to a name.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line938">line 938</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line939">line 939</a>
</div>
</div>
@@ -2859,7 +2867,7 @@ the network or <code>null</code> if the network did not exist.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line963">line 963</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line964">line 964</a>
</div>
</div>
@@ -2961,7 +2969,7 @@ describing all known networks.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line767">line 767</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line768">line 768</a>
</div>
</div>
@@ -3161,7 +3169,7 @@ protocol isn't known.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line782">line 782</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line783">line 783</a>
</div>
</div>
@@ -3262,7 +3270,7 @@ backend classes.</p>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1544">line 1544</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1548">line 1548</a>
</div>
</div>
@@ -3366,7 +3374,7 @@ the layout.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1495">line 1495</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1499">line 1499</a>
</div>
</div>
@@ -3469,7 +3477,7 @@ instances describing the found IPv6 default route interfaces.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1470">line 1470</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1474">line 1474</a>
</div>
</div>
@@ -3572,7 +3580,7 @@ instances describing the found default route interfaces.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1257">line 1257</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1261">line 1261</a>
</div>
</div>
@@ -3721,7 +3729,7 @@ be found.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1277">line 1277</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1281">line 1281</a>
</div>
</div>
@@ -3824,7 +3832,7 @@ the configuration.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1306">line 1306</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1310">line 1310</a>
</div>
</div>
@@ -3975,7 +3983,7 @@ be found.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1320">line 1320</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1324">line 1324</a>
</div>
</div>
@@ -4078,7 +4086,7 @@ are found.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1240">line 1240</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1244">line 1244</a>
</div>
</div>
@@ -4228,7 +4236,7 @@ else returns <code>false</code>.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line681">line 681</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line682">line 682</a>
</div>
</div>
@@ -4425,7 +4433,7 @@ if the given netmask value was invalid.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line663">line 663</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line664">line 664</a>
</div>
</div>
@@ -4623,7 +4631,7 @@ value of <code>32</code> for IPv4 or <code>128</code> for IPv6.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line870">line 870</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line871">line 871</a>
</div>
</div>
@@ -4795,7 +4803,7 @@ description for the given code.</td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line850">line 850</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line851">line 851</a>
</div>
</div>
@@ -4913,7 +4921,7 @@ such as <code>6in4-wan</code> or <code>tun0</code>.</p></td>
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line809">line 809</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line810">line 810</a>
</div>
</div>
@@ -5086,7 +5094,7 @@ be passed to <a href="LuCI.Class.html#.extend"><code>Class.extend()</code></a>.<
<div class="tag-source">
- <a href="network.js.html">network.js</a>, <a href="network.js.html#line1043">line 1043</a>
+ <a href="network.js.html">network.js</a>, <a href="network.js.html#line1044">line 1044</a>
</div>
</div>
@@ -7131,7 +7139,7 @@ conjunction with <code>quality</code> to calculate a quality percentage.</p></td
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.Poll.html b/docs/jsapi/LuCI.Poll.html
index 0be36a8e6..ef5aba59f 100644
--- a/docs/jsapi/LuCI.Poll.html
+++ b/docs/jsapi/LuCI.Poll.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1104,7 +1112,7 @@ loop.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line999">line 999</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1046">line 1046</a>
</div>
</div>
@@ -1189,7 +1197,7 @@ loop.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1150">line 1150</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1197">line 1197</a>
</div>
</div>
@@ -1291,7 +1299,7 @@ loop.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1023">line 1023</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1070">line 1070</a>
</div>
</div>
@@ -1488,7 +1496,7 @@ already is registered.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1064">line 1064</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1111">line 1111</a>
</div>
</div>
@@ -1662,7 +1670,7 @@ wasn't found.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1090">line 1090</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1137">line 1137</a>
</div>
</div>
@@ -1764,7 +1772,7 @@ where registered) or <code>false</code> when the polling loop already runs.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1115">line 1115</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1162">line 1162</a>
</div>
</div>
@@ -1874,7 +1882,7 @@ run to begin with.</td>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.Request.html b/docs/jsapi/LuCI.Request.html
index 4588f78fd..177b8c186 100644
--- a/docs/jsapi/LuCI.Request.html
+++ b/docs/jsapi/LuCI.Request.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1103,7 +1111,7 @@ for dealing with responses.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line569">line 569</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line611">line 611</a>
</div>
</div>
@@ -1195,7 +1203,7 @@ for dealing with responses.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line844">line 844</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line891">line 891</a>
</div>
</div>
@@ -1343,7 +1351,7 @@ implementing request retries before returning a failure.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line586">line 586</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line628">line 628</a>
</div>
</div>
@@ -1489,7 +1497,7 @@ if it already was absolute.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line797">line 797</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line844">line 844</a>
</div>
</div>
@@ -1669,7 +1677,7 @@ if it already was absolute.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line818">line 818</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line865">line 865</a>
</div>
</div>
@@ -1879,7 +1887,7 @@ if it already was absolute.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line863">line 863</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line910">line 910</a>
</div>
</div>
@@ -2026,7 +2034,7 @@ function.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line648">line 648</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line695">line 695</a>
</div>
</div>
@@ -2212,7 +2220,7 @@ function.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line822">line 822</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line869">line 869</a>
</div>
</div>
@@ -2616,6 +2624,45 @@ given object will be converted to JSON.</p></td>
<tr>
+ <td class="name"><code>responseType</code></td>
+
+
+ <td class="type">
+
+
+<span class="param-type">string</span>
+
+
+
+ </td>
+
+
+ <td class="attributes">
+
+ &lt;optional><br>
+
+
+
+ </td>
+
+
+
+ <td class="default">
+
+ text
+
+ </td>
+
+
+ <td class="description last"><p>Overrides the request response type. Valid values or <code>text</code> to
+interpret the response as UTF-8 string or <code>blob</code> to handle the
+response as binary <code>Blob</code> data.</p></td>
+ </tr>
+
+
+
+ <tr>
+
<td class="name"><code>content</code></td>
@@ -2770,7 +2817,7 @@ instances as sole argument during the HTTP request transfer.</p></td>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.Request.poll.html b/docs/jsapi/LuCI.Request.poll.html
index 28a716595..8865bf20f 100644
--- a/docs/jsapi/LuCI.Request.poll.html
+++ b/docs/jsapi/LuCI.Request.poll.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1104,7 +1112,7 @@ request calls as polling functions.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line881">line 881</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line928">line 928</a>
</div>
</div>
@@ -1189,7 +1197,7 @@ request calls as polling functions.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line985">line 985</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1032">line 1032</a>
</div>
</div>
@@ -1260,7 +1268,7 @@ request calls as polling functions.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line924">line 924</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line971">line 971</a>
</div>
</div>
@@ -1527,7 +1535,7 @@ invoke for each HTTP reply.</p></td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line961">line 961</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1008">line 1008</a>
</div>
</div>
@@ -1674,7 +1682,7 @@ This function is essentially a wrapper around
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line969">line 969</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1016">line 1016</a>
</div>
</div>
@@ -1745,7 +1753,7 @@ This function is essentially a wrapper around
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line977">line 977</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1024">line 1024</a>
</div>
</div>
@@ -1822,7 +1830,7 @@ This function is essentially a wrapper around
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line882">line 882</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line929">line 929</a>
</div>
</div>
@@ -1993,7 +2001,7 @@ else <code>null</code>.</p></td>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.Response.html b/docs/jsapi/LuCI.Response.html
index f5b3fdf42..5627139ec 100644
--- a/docs/jsapi/LuCI.Response.html
+++ b/docs/jsapi/LuCI.Response.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1102,7 +1110,7 @@
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line377">line 377</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line392">line 392</a>
</div>
</div>
@@ -1454,6 +1462,106 @@
<dt>
<div class="nameContainer">
+ <h4 class="name" id="blob">
+
+ blob<span class="signature">()</span><span class="glyphicon glyphicon-circle-arrow-right"></span><span class="type-signature returnType">{Blob}</span>
+ </h4>
+
+
+ <div class="tag-source">
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line546">line 546</a>
+ </div>
+
+ </div>
+
+
+</dt>
+<dd>
+
+
+ <div class="description">
+ <p>Access the response content as blob.</p>
+ </div>
+
+
+
+
+
+
+
+
+
+<dl class="details">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</dl>
+
+
+
+
+
+
+
+
+
+
+
+ <h5>Returns:</h5>
+
+
+
+<table class="params">
+ <thead>
+ <tr>
+
+ <th>Type</th>
+ <th class="last">Description</th>
+ </tr>
+ </thead>
+ <tbody>
+
+ <tr>
+
+ <td class="type">
+
+ Blob
+
+
+ </td>
+ <td class="description last">The response content as blob.</td>
+ </tr>
+
+ </tbody>
+</table>
+
+
+
+
+</dd>
+
+
+
+<dt>
+ <div class="nameContainer">
<h4 class="name" id="clone">
clone<span class="signature">(<span class="optional">content</span>)</span><span class="glyphicon glyphicon-circle-arrow-right"></span><span class="type-signature returnType">{<a href="LuCI.Response.html">LuCI.Response</a>}</span>
@@ -1461,7 +1569,7 @@
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line465">line 465</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line495">line 495</a>
</div>
</div>
@@ -1616,7 +1724,7 @@ using <code>String()</code> and treated as response text.</p></td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line486">line 486</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line516">line 516</a>
</div>
</div>
@@ -1743,7 +1851,7 @@ using <code>String()</code> and treated as response text.</p></td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line501">line 501</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line531">line 531</a>
</div>
</div>
@@ -1851,7 +1959,7 @@ using <code>String()</code> and treated as response text.</p></td>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.XHR.html b/docs/jsapi/LuCI.XHR.html
index 62a7e8963..4d1670b7b 100644
--- a/docs/jsapi/LuCI.XHR.html
+++ b/docs/jsapi/LuCI.XHR.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1106,7 +1114,7 @@ request handling.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2943">line 2943</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3022">line 3022</a>
</div>
</div>
@@ -1193,7 +1201,7 @@ request handling.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3046">line 3046</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3125">line 3125</a>
</div>
</div>
@@ -1267,7 +1275,7 @@ request handling.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3035">line 3035</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3114">line 3114</a>
</div>
</div>
@@ -1370,7 +1378,7 @@ already completed.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3022">line 3022</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3101">line 3101</a>
</div>
</div>
@@ -1447,7 +1455,7 @@ finishes or timed out.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2978">line 2978</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3057">line 3057</a>
</div>
</div>
@@ -1690,7 +1698,7 @@ finishes or timed out.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3005">line 3005</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3084">line 3084</a>
</div>
</div>
@@ -1933,7 +1941,7 @@ finishes or timed out.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3061">line 3061</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3140">line 3140</a>
</div>
</div>
@@ -2043,7 +2051,7 @@ when invoked.</p>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.dom.html b/docs/jsapi/LuCI.dom.html
index 8247dc1ea..539e07683 100644
--- a/docs/jsapi/LuCI.dom.html
+++ b/docs/jsapi/LuCI.dom.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1103,7 +1111,7 @@ manipulating DOM elements.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2065">line 2065</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2136">line 2136</a>
</div>
</div>
@@ -1188,7 +1196,7 @@ manipulating DOM elements.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2216">line 2216</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2287">line 2287</a>
</div>
</div>
@@ -1389,7 +1397,7 @@ if either the <code>node</code> argument was no valid DOM <code>node</code> or i
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2331">line 2331</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2402">line 2402</a>
</div>
</div>
@@ -1587,7 +1595,7 @@ call implicitely turning it into a string.</p></td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2565">line 2565</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2636">line 2636</a>
</div>
</div>
@@ -1788,7 +1796,7 @@ a valid Class instance.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2619">line 2619</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2690">line 2690</a>
</div>
</div>
@@ -2004,7 +2012,7 @@ instance didn't have the requested <code>method</code>.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2283">line 2283</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2354">line 2354</a>
</div>
</div>
@@ -2208,7 +2216,7 @@ if either the <code>node</code> argument was no valid DOM <code>node</code> or i
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2409">line 2409</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2480">line 2480</a>
</div>
</div>
@@ -2468,7 +2476,7 @@ element names, such as spaces.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2485">line 2485</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2556">line 2556</a>
</div>
</div>
@@ -2707,7 +2715,7 @@ be found.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2079">line 2079</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2150">line 2150</a>
</div>
</div>
@@ -2852,7 +2860,7 @@ be found.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2585">line 2585</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2656">line 2656</a>
</div>
</div>
@@ -3002,7 +3010,7 @@ class could be found on the node itself or any of its parents.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2665">line 2665</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2736">line 2736</a>
</div>
</div>
@@ -3189,7 +3197,7 @@ result when testing it using the given <code>ignoreFn</code>.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2140">line 2140</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2211">line 2211</a>
</div>
</div>
@@ -3375,7 +3383,7 @@ selector didn't match.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2167">line 2167</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2238">line 2238</a>
</div>
</div>
@@ -3565,7 +3573,7 @@ selector didn't match any parent.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2098">line 2098</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2169">line 2169</a>
</div>
</div>
@@ -3720,7 +3728,7 @@ the first <code>div</code> element node.</p></td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2628">line 2628</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2699">line 2699</a>
</div>
</div>
@@ -3874,7 +3882,7 @@ ignored, else not.</p>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:05 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.fs.html b/docs/jsapi/LuCI.fs.html
index 06b0d2f10..c370890be 100644
--- a/docs/jsapi/LuCI.fs.html
+++ b/docs/jsapi/LuCI.fs.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1104,7 +1112,7 @@ external JavaScript, use <code>L.require(&quot;fs&quot;).then(...)</code>.</p></
<div class="tag-source">
- <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line111">line 111</a>
+ <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line145">line 145</a>
</div>
</div>
@@ -1189,7 +1197,7 @@ external JavaScript, use <code>L.require(&quot;fs&quot;).then(...)</code>.</p></
<div class="tag-source">
- <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line232">line 232</a>
+ <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line266">line 266</a>
</div>
</div>
@@ -1400,6 +1408,284 @@ results or rejecting with an error stating the failure reason.</td>
<dt>
<div class="nameContainer">
+ <h4 class="name" id="exec_direct">
+
+ exec_direct<span class="signature">(command, <span class="optional">params</span>, <span class="optional">type</span>, <span class="optional">latin1</span>)</span><span class="glyphicon glyphicon-circle-arrow-right"></span><span class="type-signature returnType">{Promise.&lt;*>}</span>
+ </h4>
+
+
+ <div class="tag-source">
+ <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line403">line 403</a>
+ </div>
+
+ </div>
+
+
+</dt>
+<dd>
+
+
+ <div class="description">
+ <p>Execute the specified command, bypassing ubus.</p>
+<p>Note: The <code>command</code> must be either the path to an executable,
+or a basename without arguments in which case it will be searched
+in $PATH. If specified, the values given in <code>params</code> will be passed
+as arguments to the command.</p>
+<p>This function will invoke the requested commands through the cgi-io
+helper applet at <code>/cgi-bin/cgi-exec</code> which bypasses the ubus rpc
+transport. This is useful to fetch large command outputs which might
+exceed the ubus message size limits or which contain binary data.</p>
+<p>The cgi-io helper will enforce the same access permission rules as
+the ubus based exec call.</p>
+ </div>
+
+
+
+
+
+
+
+
+
+<table class="params">
+ <thead>
+ <tr>
+
+ <th>Name</th>
+
+
+ <th>Type</th>
+
+
+ <th>Default</th>
+
+
+ <th class="last">Description</th>
+ </tr>
+ </thead>
+
+ <tbody>
+
+
+ <tr>
+
+ <td class="name"><code>command</code></td>
+
+
+ <td class="type">
+
+
+<span class="param-type">string</span>
+
+
+
+ </td>
+
+
+ <td class="default">
+
+ </td>
+
+
+ <td class="description last">
+
+
+
+
+
+
+ <p>The command to invoke.</p></td>
+ </tr>
+
+
+
+ <tr>
+
+ <td class="name"><code>params</code></td>
+
+
+ <td class="type">
+
+
+<span class="param-type">Array.&lt;string></span>
+
+
+
+ </td>
+
+
+ <td class="default">
+
+ </td>
+
+
+ <td class="description last">
+
+
+ <span class="optional">optional</span>
+
+
+
+
+
+ <p>The arguments to pass to the command.</p></td>
+ </tr>
+
+
+
+ <tr>
+
+ <td class="name"><code>type</code></td>
+
+
+ <td class="type">
+
+
+<span class="param-type">string</span>
+
+
+
+ </td>
+
+
+ <td class="default">
+
+ text
+
+ </td>
+
+
+ <td class="description last">
+
+
+ <span class="optional">optional</span>
+
+
+
+
+
+ <p>The expected output type of the invoked program. Valid values are
+<code>text</code> to interpret the output as string, <code>json</code> to parse the output
+as JSON or <code>blob</code> to return the output as Blob instance.</p></td>
+ </tr>
+
+
+
+ <tr>
+
+ <td class="name"><code>latin1</code></td>
+
+
+ <td class="type">
+
+
+<span class="param-type">boolean</span>
+
+
+
+ </td>
+
+
+ <td class="default">
+
+ false
+
+ </td>
+
+
+ <td class="description last">
+
+
+ <span class="optional">optional</span>
+
+
+
+
+
+ <p>Whether to encode the command line as Latin1 instead of UTF-8. This
+is usually not needed but can be useful for programs that cannot
+handle UTF-8 input.</p></td>
+ </tr>
+
+
+ </tbody>
+</table>
+
+
+
+<dl class="details">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</dl>
+
+
+
+
+
+
+
+
+
+
+
+ <h5>Returns:</h5>
+
+
+
+<table class="params">
+ <thead>
+ <tr>
+
+ <th>Type</th>
+ <th class="last">Description</th>
+ </tr>
+ </thead>
+ <tbody>
+
+ <tr>
+
+ <td class="type">
+
+ Promise.&lt;*>
+
+
+ </td>
+ <td class="description last">Returns a promise resolving with the command stdout output interpreted
+according to the specified type or rejecting with an error stating the
+failure reason.</td>
+ </tr>
+
+ </tbody>
+</table>
+
+
+
+
+</dd>
+
+
+
+<dt>
+ <div class="nameContainer">
<h4 class="name" id="lines">
lines<span class="signature">(path)</span><span class="glyphicon glyphicon-circle-arrow-right"></span><span class="type-signature returnType">{Promise.&lt;Array.&lt;string>>}</span>
@@ -1407,7 +1693,7 @@ results or rejecting with an error stating the failure reason.</td>
<div class="tag-source">
- <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line281">line 281</a>
+ <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line315">line 315</a>
</div>
</div>
@@ -1557,7 +1843,7 @@ of the given file or <code>[]</code> on failure.</td>
<div class="tag-source">
- <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line132">line 132</a>
+ <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line166">line 166</a>
</div>
</div>
@@ -1703,7 +1989,7 @@ rejecting with an error stating the failure reason.</td>
<div class="tag-source">
- <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line161">line 161</a>
+ <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line195">line 195</a>
</div>
</div>
@@ -1843,6 +2129,208 @@ rejecting with an error stating the failure reason.</td>
<dt>
<div class="nameContainer">
+ <h4 class="name" id="read_direct">
+
+ read_direct<span class="signature">(path, <span class="optional">type</span>)</span><span class="glyphicon glyphicon-circle-arrow-right"></span><span class="type-signature returnType">{Promise.&lt;*>}</span>
+ </h4>
+
+
+ <div class="tag-source">
+ <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line356">line 356</a>
+ </div>
+
+ </div>
+
+
+</dt>
+<dd>
+
+
+ <div class="description">
+ <p>Read the contents of the given file and return them, bypassing ubus.</p>
+<p>This function will read the requested file through the cgi-io
+helper applet at <code>/cgi-bin/cgi-download</code> which bypasses the ubus rpc
+transport. This is useful to fetch large file contents which might
+exceed the ubus message size limits or which contain binary data.</p>
+<p>The cgi-io helper will enforce the same access permission rules as
+the ubus based read call.</p>
+ </div>
+
+
+
+
+
+
+
+
+
+<table class="params">
+ <thead>
+ <tr>
+
+ <th>Name</th>
+
+
+ <th>Type</th>
+
+
+ <th>Default</th>
+
+
+ <th class="last">Description</th>
+ </tr>
+ </thead>
+
+ <tbody>
+
+
+ <tr>
+
+ <td class="name"><code>path</code></td>
+
+
+ <td class="type">
+
+
+<span class="param-type">string</span>
+
+
+
+ </td>
+
+
+ <td class="default">
+
+ </td>
+
+
+ <td class="description last">
+
+
+
+
+
+
+ <p>The file path to read.</p></td>
+ </tr>
+
+
+
+ <tr>
+
+ <td class="name"><code>type</code></td>
+
+
+ <td class="type">
+
+
+<span class="param-type">string</span>
+
+
+
+ </td>
+
+
+ <td class="default">
+
+ text
+
+ </td>
+
+
+ <td class="description last">
+
+
+ <span class="optional">optional</span>
+
+
+
+
+
+ <p>The expected type of read file contents. Valid values are <code>text</code> to
+interpret the contents as string, <code>json</code> to parse the contents as JSON
+or <code>blob</code> to return the contents as Blob instance.</p></td>
+ </tr>
+
+
+ </tbody>
+</table>
+
+
+
+<dl class="details">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</dl>
+
+
+
+
+
+
+
+
+
+
+
+ <h5>Returns:</h5>
+
+
+
+<table class="params">
+ <thead>
+ <tr>
+
+ <th>Type</th>
+ <th class="last">Description</th>
+ </tr>
+ </thead>
+ <tbody>
+
+ <tr>
+
+ <td class="type">
+
+ Promise.&lt;*>
+
+
+ </td>
+ <td class="description last">Returns a promise resolving with the file contents interpreted according
+to the specified type or rejecting with an error stating the failure
+reason.</td>
+ </tr>
+
+ </tbody>
+</table>
+
+
+
+
+</dd>
+
+
+
+<dt>
+ <div class="nameContainer">
<h4 class="name" id="remove">
remove<span class="signature">(The)</span><span class="glyphicon glyphicon-circle-arrow-right"></span><span class="type-signature returnType">{Promise.&lt;number>}</span>
@@ -1850,7 +2338,7 @@ rejecting with an error stating the failure reason.</td>
<div class="tag-source">
- <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line203">line 203</a>
+ <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line237">line 237</a>
</div>
</div>
@@ -1996,7 +2484,7 @@ the failure reason.</td>
<div class="tag-source">
- <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line146">line 146</a>
+ <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line180">line 180</a>
</div>
</div>
@@ -2142,7 +2630,7 @@ rejecting with an error stating the failure reason.</td>
<div class="tag-source">
- <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line260">line 260</a>
+ <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line294">line 294</a>
</div>
</div>
@@ -2294,7 +2782,7 @@ on failure.</td>
<div class="tag-source">
- <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line187">line 187</a>
+ <a href="fs.js.html">fs.js</a>, <a href="fs.js.html#line221">line 221</a>
</div>
</div>
@@ -2983,7 +3471,7 @@ the failure reason.</td>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.html b/docs/jsapi/LuCI.html
index 000e39084..2d15fc039 100644
--- a/docs/jsapi/LuCI.html
+++ b/docs/jsapi/LuCI.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1321,7 +1329,7 @@ as request timeouts, base URLs etc.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1340">line 1340</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1389">line 1389</a>
</div>
</div>
@@ -1533,7 +1541,7 @@ as parameters.</p></td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1300">line 1300</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1349">line 1349</a>
</div>
</div>
@@ -1772,7 +1780,7 @@ argument or copied from the given error instance.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1918">line 1918</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1989">line 1989</a>
</div>
</div>
@@ -1984,7 +1992,7 @@ callback function. The function is a wrapper around
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2040">line 2040</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2111">line 2111</a>
</div>
</div>
@@ -2087,7 +2095,7 @@ when it didn't run to begin with.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1574">line 1574</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1623">line 1623</a>
</div>
</div>
@@ -2280,7 +2288,7 @@ has no sub-features.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1765">line 1765</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1836">line 1836</a>
</div>
</div>
@@ -2435,7 +2443,7 @@ not <code>null</code>, else returns <code>false</code>.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1745">line 1745</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1816">line 1816</a>
</div>
</div>
@@ -2528,6 +2536,163 @@ not <code>null</code>, else returns <code>false</code>.</td>
<dt>
<div class="nameContainer">
+ <h4 class="name" id="media">
+
+ media<span class="signature">(<span class="optional">parts</span>)</span><span class="glyphicon glyphicon-circle-arrow-right"></span><span class="type-signature returnType">{string}</span>
+ </h4>
+
+
+ <div class="tag-source">
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1803">line 1803</a>
+ </div>
+
+ </div>
+
+
+</dt>
+<dd>
+
+
+ <div class="description">
+ <p>Construct an URL path relative to the media resource path of the
+LuCI ui (usually <code>/luci-static/$theme_name</code>).</p>
+<p>The resulting URL is guaranteed to only contain the characters
+<code>a-z</code>, <code>A-Z</code>, <code>0-9</code>, <code>_</code>, <code>.</code>, <code>%</code>, <code>,</code>, <code>;</code>, and <code>-</code> as well
+as <code>/</code> for the path separator.</p>
+ </div>
+
+
+
+
+
+
+
+
+
+<table class="params">
+ <thead>
+ <tr>
+
+ <th>Name</th>
+
+
+ <th>Type</th>
+
+
+
+ <th class="last">Description</th>
+ </tr>
+ </thead>
+
+ <tbody>
+
+
+ <tr>
+
+ <td class="name"><code>parts</code></td>
+
+
+ <td class="type">
+
+
+<span class="param-type">Array.&lt;string></span>
+
+
+
+ </td>
+
+
+
+ <td class="description last">
+
+
+ <span class="optional">optional</span>
+
+
+
+
+
+ <p>An array of parts to join into an URL path. Parts may contain
+slashes and any of the other characters mentioned above.</p></td>
+ </tr>
+
+
+ </tbody>
+</table>
+
+
+
+<dl class="details">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</dl>
+
+
+
+
+
+
+
+
+
+
+
+ <h5>Returns:</h5>
+
+
+
+<table class="params">
+ <thead>
+ <tr>
+
+ <th>Type</th>
+ <th class="last">Description</th>
+ </tr>
+ </thead>
+ <tbody>
+
+ <tr>
+
+ <td class="type">
+
+ string
+
+
+ </td>
+ <td class="description last">Returns the resulting URL path.</td>
+ </tr>
+
+ </tbody>
+</table>
+
+
+
+
+</dd>
+
+
+
+<dt>
+ <div class="nameContainer">
<h4 class="name" id="path">
path<span class="signature">(<span class="optional">prefix</span>, <span class="optional">parts</span>)</span><span class="glyphicon glyphicon-circle-arrow-right"></span><span class="type-signature returnType">{string}</span>
@@ -2535,7 +2700,7 @@ not <code>null</code>, else returns <code>false</code>.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1679">line 1679</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1728">line 1728</a>
</div>
</div>
@@ -2722,7 +2887,7 @@ slashes and any of the other characters mentioned above.</p></td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1988">line 1988</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2059">line 2059</a>
</div>
</div>
@@ -3027,7 +3192,7 @@ polling request.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1946">line 1946</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2017">line 2017</a>
</div>
</div>
@@ -3242,7 +3407,7 @@ by default.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1234">line 1234</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1283">line 1283</a>
</div>
</div>
@@ -3481,7 +3646,7 @@ argument or copied from the given error instance.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1379">line 1379</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1428">line 1428</a>
</div>
</div>
@@ -3739,7 +3904,7 @@ class instance.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1873">line 1873</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1944">line 1944</a>
</div>
</div>
@@ -3910,7 +4075,7 @@ to the given default value on error.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1732">line 1732</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1781">line 1781</a>
</div>
</div>
@@ -4067,7 +4232,7 @@ slashes and any of the other characters mentioned above.</p></td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2053">line 2053</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2124">line 2124</a>
</div>
</div>
@@ -4170,7 +4335,7 @@ when it was already running.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1794">line 1794</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1865">line 1865</a>
</div>
</div>
@@ -4387,7 +4552,7 @@ addresses or numeric values respectively.</p></td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2027">line 2027</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2098">line 2098</a>
</div>
</div>
@@ -4535,7 +4700,7 @@ it could not be found.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1839">line 1839</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1910">line 1910</a>
</div>
</div>
@@ -4685,7 +4850,7 @@ space and returned as array.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1710">line 1710</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1759">line 1759</a>
</div>
</div>
@@ -4848,7 +5013,7 @@ slashes and any of the other characters mentioned above.</p></td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1877">line 1877</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1948">line 1948</a>
</div>
</div>
@@ -5019,7 +5184,7 @@ else <code>null</code>.</p></td>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:05 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.rpc.html b/docs/jsapi/LuCI.rpc.html
index c6c065afb..35d319848 100644
--- a/docs/jsapi/LuCI.rpc.html
+++ b/docs/jsapi/LuCI.rpc.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -3221,7 +3229,7 @@ to the <code>expect</code> and <code>filter</code> declarations.</td>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.uci.html b/docs/jsapi/LuCI.uci.html
index 98698e98d..a38f932f2 100644
--- a/docs/jsapi/LuCI.uci.html
+++ b/docs/jsapi/LuCI.uci.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -4769,7 +4777,7 @@ associated name as arguments.</p>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/LuCI.view.html b/docs/jsapi/LuCI.view.html
index 53c222c5f..3e300f262 100644
--- a/docs/jsapi/LuCI.view.html
+++ b/docs/jsapi/LuCI.view.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1103,7 +1111,7 @@ set of methods to inherit from.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2687">line 2687</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2758">line 2758</a>
</div>
</div>
@@ -1188,7 +1196,7 @@ set of methods to inherit from.</p></div>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2905">line 2905</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2976">line 2976</a>
</div>
</div>
@@ -1301,7 +1309,7 @@ methods are overwritten with <code>null</code>.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2871">line 2871</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2942">line 2942</a>
</div>
</div>
@@ -1465,7 +1473,7 @@ is reenabled.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2790">line 2790</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2861">line 2861</a>
</div>
</div>
@@ -1629,7 +1637,7 @@ is reenabled.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2834">line 2834</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2905">line 2905</a>
</div>
</div>
@@ -1795,7 +1803,7 @@ is reenabled.</td>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2725">line 2725</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2796">line 2796</a>
</div>
</div>
@@ -1905,7 +1913,7 @@ the default implementation does nothing.</p>
<div class="tag-source">
- <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2757">line 2757</a>
+ <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2828">line 2828</a>
</div>
</div>
@@ -2079,7 +2087,7 @@ to a <code>Node</code> value.</td>
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:06 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/fs.js.html b/docs/jsapi/fs.js.html
index 467319f89..769e3edd8 100644
--- a/docs/jsapi/fs.js.html
+++ b/docs/jsapi/fs.js.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1186,6 +1194,40 @@ function handleRpcReply(expect, rc) {
return rc;
}
+function handleCgiIoReply(res) {
+ if (!res.ok || res.status != 200) {
+ var e = new Error(res.statusText);
+ switch (res.status) {
+ case 400:
+ e.name = 'InvalidArgumentError';
+ break;
+
+ case 403:
+ e.name = 'PermissionError';
+ break;
+
+ case 404:
+ e.name = 'NotFoundError';
+ break;
+
+ default:
+ e.name = 'Error';
+ }
+ throw e;
+ }
+
+ switch (this.type) {
+ case 'blob':
+ return res.blob();
+
+ case 'json':
+ return res.json();
+
+ default:
+ return res.text();
+ }
+}
+
/**
* @class fs
* @memberof LuCI
@@ -1371,6 +1413,100 @@ var FileSystem = L.Class.extend(/** @lends LuCI.fs.prototype */ {
return lines;
});
+ },
+
+ /**
+ * Read the contents of the given file and return them, bypassing ubus.
+ *
+ * This function will read the requested file through the cgi-io
+ * helper applet at `/cgi-bin/cgi-download` which bypasses the ubus rpc
+ * transport. This is useful to fetch large file contents which might
+ * exceed the ubus message size limits or which contain binary data.
+ *
+ * The cgi-io helper will enforce the same access permission rules as
+ * the ubus based read call.
+ *
+ * @param {string} path
+ * The file path to read.
+ *
+ * @param {string} [type=text]
+ * The expected type of read file contents. Valid values are `text` to
+ * interpret the contents as string, `json` to parse the contents as JSON
+ * or `blob` to return the contents as Blob instance.
+ *
+ * @returns {Promise&lt;*>}
+ * Returns a promise resolving with the file contents interpreted according
+ * to the specified type or rejecting with an error stating the failure
+ * reason.
+ */
+ read_direct: function(path, type) {
+ var postdata = 'sessionid=%s&amp;path=%s'
+ .format(encodeURIComponent(L.env.sessionid), encodeURIComponent(path));
+
+ return L.Request.post(L.env.cgi_base + '/cgi-download', postdata, {
+ headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
+ responseType: (type == 'blob') ? 'blob' : 'text'
+ }).then(handleCgiIoReply.bind({ type: type }));
+ },
+
+ /**
+ * Execute the specified command, bypassing ubus.
+ *
+ * Note: The `command` must be either the path to an executable,
+ * or a basename without arguments in which case it will be searched
+ * in $PATH. If specified, the values given in `params` will be passed
+ * as arguments to the command.
+ *
+ * This function will invoke the requested commands through the cgi-io
+ * helper applet at `/cgi-bin/cgi-exec` which bypasses the ubus rpc
+ * transport. This is useful to fetch large command outputs which might
+ * exceed the ubus message size limits or which contain binary data.
+ *
+ * The cgi-io helper will enforce the same access permission rules as
+ * the ubus based exec call.
+ *
+ * @param {string} command
+ * The command to invoke.
+ *
+ * @param {string[]} [params]
+ * The arguments to pass to the command.
+ *
+ * @param {string} [type=text]
+ * The expected output type of the invoked program. Valid values are
+ * `text` to interpret the output as string, `json` to parse the output
+ * as JSON or `blob` to return the output as Blob instance.
+ *
+ * @param {boolean} [latin1=false]
+ * Whether to encode the command line as Latin1 instead of UTF-8. This
+ * is usually not needed but can be useful for programs that cannot
+ * handle UTF-8 input.
+ *
+ * @returns {Promise&lt;*>}
+ * Returns a promise resolving with the command stdout output interpreted
+ * according to the specified type or rejecting with an error stating the
+ * failure reason.
+ */
+ exec_direct: function(command, params, type, latin1) {
+ var cmdstr = String(command)
+ .replace(/\\/g, '\\\\').replace(/(\s)/g, '\\$1');
+
+ if (Array.isArray(params))
+ for (var i = 0; i &lt; params.length; i++)
+ cmdstr += ' ' + String(params[i])
+ .replace(/\\/g, '\\\\').replace(/(\s)/g, '\\$1');
+
+ if (latin1)
+ cmdstr = escape(cmdstr).replace(/\+/g, '%2b');
+ else
+ cmdstr = encodeURIComponent(cmdstr);
+
+ var postdata = 'sessionid=%s&amp;command=%s'
+ .format(encodeURIComponent(L.env.sessionid), cmdstr);
+
+ return L.Request.post(L.env.cgi_base + '/cgi-exec', postdata, {
+ headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
+ responseType: (type == 'blob') ? 'blob' : 'text'
+ }).then(handleCgiIoReply.bind({ type: type }));
}
});
@@ -1387,7 +1523,7 @@ return FileSystem;
<footer>
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:05 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/index.html b/docs/jsapi/index.html
index 5933bcd94..c5203a4d2 100644
--- a/docs/jsapi/index.html
+++ b/docs/jsapi/index.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1104,7 +1112,7 @@
<footer>
- Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:05 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/luci.js.html b/docs/jsapi/luci.js.html
index 126825668..c8bf70211 100644
--- a/docs/jsapi/luci.js.html
+++ b/docs/jsapi/luci.js.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1145,7 +1153,7 @@
* It provides simple means to create subclasses of given classes and
* implements prototypal inheritance.
*/
- var superContext = null, Class = Object.assign(function() {}, {
+ var superContext = {}, classIndex = 0, Class = Object.assign(function() {}, {
/**
* Extends this base class with the properties described in
* `properties` and returns a new subclassed Class instance
@@ -1164,8 +1172,9 @@
*/
extend: function(properties) {
var props = {
+ __id__: { value: classIndex },
__base__: { value: this.prototype },
- __name__: { value: properties.__name__ || 'anonymous' }
+ __name__: { value: properties.__name__ || 'anonymous' + classIndex++ }
};
var ClassConstructor = function() {
@@ -1343,15 +1352,21 @@
* superclass method returned `null`.
*/
super: function(key, callArgs) {
- for (superContext = Object.getPrototypeOf(superContext ||
- Object.getPrototypeOf(this));
- superContext &amp;&amp; !superContext.hasOwnProperty(key);
- superContext = Object.getPrototypeOf(superContext)) { }
+ if (key == null)
+ return null;
+
+ var slotIdx = this.__id__ + '.' + key,
+ symStack = superContext[slotIdx],
+ protoCtx = null;
- if (!superContext)
+ for (protoCtx = Object.getPrototypeOf(symStack ? symStack[0] : Object.getPrototypeOf(this));
+ protoCtx != null &amp;&amp; !protoCtx.hasOwnProperty(key);
+ protoCtx = Object.getPrototypeOf(protoCtx)) {}
+
+ if (protoCtx == null)
return null;
- var res = superContext[key];
+ var res = protoCtx[key];
if (arguments.length > 1) {
if (typeof(res) != 'function')
@@ -1360,10 +1375,18 @@
if (typeof(callArgs) != 'object')
callArgs = this.varargs(arguments, 1);
+ if (symStack)
+ symStack.unshift(protoCtx);
+ else
+ superContext[slotIdx] = [ protoCtx ];
+
res = res.apply(this, callArgs);
- }
- superContext = null;
+ if (symStack &amp;&amp; symStack.length > 1)
+ symStack.shift(protoCtx);
+ else
+ delete superContext[slotIdx];
+ }
return res;
},
@@ -1512,17 +1535,32 @@
/* privates */
this.xhr = xhr;
- if (content != null &amp;&amp; typeof(content) == 'object') {
+ if (content instanceof Blob) {
+ this.responseBlob = content;
+ this.responseJSON = null;
+ this.responseText = null;
+ }
+ else if (content != null &amp;&amp; typeof(content) == 'object') {
+ this.responseBlob = null;
this.responseJSON = content;
this.responseText = null;
}
else if (content != null) {
+ this.responseBlob = null;
this.responseJSON = null;
this.responseText = String(content);
}
else {
this.responseJSON = null;
- this.responseText = xhr.responseText;
+
+ if (xhr.responseType == 'blob') {
+ this.responseBlob = xhr.response;
+ this.responseText = null;
+ }
+ else {
+ this.responseBlob = null;
+ this.responseText = xhr.responseText;
+ }
}
},
@@ -1581,6 +1619,18 @@
this.responseText = JSON.stringify(this.responseJSON);
return this.responseText;
+ },
+
+ /**
+ * Access the response content as blob.
+ *
+ * @instance
+ * @memberof LuCI.Response
+ * @returns {Blob}
+ * The response content as blob.
+ */
+ blob: function() {
+ return this.responseBlob;
}
});
@@ -1694,6 +1744,11 @@
* @property {boolean} [credentials=false]
* Whether to include credentials such as cookies in the request.
*
+ * @property {string} [responseType=text]
+ * Overrides the request response type. Valid values or `text` to
+ * interpret the response as UTF-8 string or `blob` to handle the
+ * response as binary `Blob` data.
+ *
* @property {*} [content]
* Specifies the HTTP message body to send along with the request.
* If the value is a function, it is invoked and the return value
@@ -1779,7 +1834,7 @@
else
opt.xhr.open(opt.method, opt.url, true);
- opt.xhr.responseType = 'text';
+ opt.xhr.responseType = opt.responseType || 'text';
if ('overrideMimeType' in opt.xhr)
opt.xhr.overrideMimeType('application/octet-stream');
@@ -2255,6 +2310,8 @@
if (env.base_url == null)
this.error('InternalError', 'Cannot find url of luci.js');
+ env.cgi_base = env.scriptname.replace(/\/[^\/]+$/, '');
+
Object.assign(this.env, env);
document.addEventListener('poll-start', function(ev) {
@@ -2571,8 +2628,8 @@
if (rpcBaseURL == null) {
var rpcFallbackURL = this.url('admin/ubus');
- rpcBaseURL = Request.get('/ubus/').then(function(res) {
- return (rpcBaseURL = (res.status == 400) ? '/ubus/' : rpcFallbackURL);
+ rpcBaseURL = Request.get(this.env.ubuspath).then(function(res) {
+ return (rpcBaseURL = (res.status == 400) ? L.env.ubuspath : rpcFallbackURL);
}, function() {
return (rpcBaseURL = rpcFallbackURL);
}).then(function(url) {
@@ -2812,6 +2869,28 @@
},
/**
+ * Construct an URL path relative to the media resource path of the
+ * LuCI ui (usually `/luci-static/$theme_name`).
+ *
+ * The resulting URL is guaranteed to only contain the characters
+ * `a-z`, `A-Z`, `0-9`, `_`, `.`, `%`, `,`, `;`, and `-` as well
+ * as `/` for the path separator.
+ *
+ * @instance
+ * @memberof LuCI
+ *
+ * @param {string[]} [parts]
+ * An array of parts to join into an URL path. Parts may contain
+ * slashes and any of the other characters mentioned above.
+ *
+ * @return {string}
+ * Returns the resulting URL path.
+ */
+ media: function() {
+ return this.path(this.env.media, arguments);
+ },
+
+ /**
* Return the complete URL path to the current view.
*
* @instance
@@ -3909,9 +3988,9 @@
* returned promise runs to completion before the button
* is reenabled.
*/
- handleSaveApply: function(ev) {
+ handleSaveApply: function(ev, mode) {
return this.handleSave(ev).then(function() {
- L.ui.changes.apply(true);
+ L.ui.changes.apply(mode == '0');
});
},
@@ -3983,12 +4062,20 @@
addFooter: function() {
var footer = E([]);
+ var saveApplyBtn = this.handleSaveApply ? new L.ui.ComboButton('0', {
+ 0: [ _('Save &amp; Apply') ],
+ 1: [ _('Apply unchecked') ]
+ }, {
+ classes: {
+ 0: 'cbi-button cbi-button-apply important',
+ 1: 'cbi-button cbi-button-negative important'
+ },
+ click: L.ui.createHandlerFn(this, 'handleSaveApply')
+ }).render() : E([]);
+
if (this.handleSaveApply || this.handleSave || this.handleReset) {
footer.appendChild(E('div', { 'class': 'cbi-page-actions' }, [
- this.handleSaveApply ? E('button', {
- 'class': 'cbi-button cbi-button-apply',
- 'click': L.ui.createHandlerFn(this, 'handleSaveApply')
- }, [ _('Save &amp; Apply') ]) : '', ' ',
+ saveApplyBtn, ' ',
this.handleSave ? E('button', {
'class': 'cbi-button cbi-button-save',
'click': L.ui.createHandlerFn(this, 'handleSave')
@@ -4162,7 +4249,7 @@
<footer>
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:05 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/network.js.html b/docs/jsapi/network.js.html
index 3b42218a6..4a306a23a 100644
--- a/docs/jsapi/network.js.html
+++ b/docs/jsapi/network.js.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1083,7 +1091,7 @@
var proto_errors = {
CONNECT_FAILED: _('Connection attempt failed'),
- INVALID_ADDRESS: _('IP address in invalid'),
+ INVALID_ADDRESS: _('IP address is invalid'),
INVALID_GATEWAY: _('Gateway address is invalid'),
INVALID_LOCAL_ADDRESS: _('Local IP address is invalid'),
MISSING_ADDRESS: _('IP address is missing'),
@@ -1463,6 +1471,7 @@ function initNetworkState(refresh) {
type: dev.type,
mtu: dev.mtu,
qlen: dev.qlen,
+ wireless: dev.wireless,
ipaddrs: [],
ip6addrs: []
};
@@ -2226,7 +2235,10 @@ Network = L.Class.extend(/** @lends LuCI.Network.prototype */ {
if (devices.hasOwnProperty(ifname))
continue;
- if (isIgnoredIfname(ifname) || isVirtualIfname(ifname) || isWifiIfname(ifname))
+ if (isIgnoredIfname(ifname) || isWifiIfname(ifname))
+ continue;
+
+ if (_state.netdevs[ifname].wireless)
continue;
devices[ifname] = this.instantiateDevice(ifname);
@@ -5183,7 +5195,7 @@ return Network;
<footer>
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:05 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/rpc.js.html b/docs/jsapi/rpc.js.html
index 4f10cb3ad..c9d239b0e 100644
--- a/docs/jsapi/rpc.js.html
+++ b/docs/jsapi/rpc.js.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -1565,7 +1573,7 @@ return L.Class.extend(/** @lends LuCI.rpc.prototype */ {
<footer>
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:05 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>
diff --git a/docs/jsapi/uci.js.html b/docs/jsapi/uci.js.html
index c12047cb5..8a619eed1 100644
--- a/docs/jsapi/uci.js.html
+++ b/docs/jsapi/uci.js.html
@@ -74,6 +74,8 @@
<li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
+ <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
+
<li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
<li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
@@ -220,12 +222,16 @@
<li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
+ <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
+
<li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
<li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
<li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
+ <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
+
<li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
<li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
@@ -864,6 +870,8 @@
<span class="subtitle">Methods</span>
+ <li data-name="LuCI.Response#blob"><a href="LuCI.Response.html#blob">blob</a></li>
+
<li data-name="LuCI.Response#clone"><a href="LuCI.Response.html#clone">clone</a></li>
<li data-name="LuCI.Response#json"><a href="LuCI.Response.html#json">json</a></li>
@@ -2031,7 +2039,7 @@ return L.Class.extend(/** @lends LuCI.uci.prototype */ {
<footer>
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Nov 07 2019 12:36:05 GMT+0100 (Central European Standard Time)
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Feb 12 2020 11:56:59 GMT+0100 (Central European Standard Time)
</footer>
</div>
</div>