-%>
<%-
+local bit = require "bit"
local rowcnt = 1
+
function rowstyle()
rowcnt = rowcnt + 1
return (rowcnt % 2) + 1
end
+
+function opkg_error(code)
+ code = bit.rshift(tonumber(code), 8)
+ return translate(
+ 'a_s_packages_code%i' % code,
+ translate(
+ 'a_s_packages_code%i' % code,
+ '%s %i' % { translate('code'), code }
+ )
+ )
+end
-%>
<%+header%>
-<h1><%:system%></h1>
-<h2><%:a_s_packages%></h2>
+<h2><a id="content" name="content"><%:system%></a></h2>
+<h3><%:a_s_packages%></h3>
<br />
<% if install or remove or update or upgrade then %>
<div class="code"><strong><%:status%>:</strong><br />
<% if update then %>
- <%:a_s_packages_update%>: <% if update == 0 then %><span class="ok"><%:ok%></span><% else %><span class="error"><%:error%> (<%:code%> <%=update%>)</span><% end %><br />
+ <%:a_s_packages_update%>: <% if update == 0 then %><span class="ok"><%:ok%></span><% else %><span class="error"><%:error%> (<%=opkg_error(update)%>)</span><% end %><br />
<% end %>
<% if upgrade then%>
- <%:a_s_packages_upgrade%>: <% if upgrade == 0 then %><span class="ok"><%:ok%></span><% else %><span class="error"><%:error%> (<%:code%> <%=upgrade%>)</span><% end %><br />
+ <%:a_s_packages_upgrade%>: <% if upgrade == 0 then %><span class="ok"><%:ok%></span><% else %><span class="error"><%:error%> (<%=opkg_error(upgrade)%>)</span><% end %><br />
<% end %>
<% if install then for k,v in pairs(install) do %>
- <%:a_s_packages_install%> '<%=k%>': <% if v == 0 then %><span class="ok"><%:ok%></span><% else %><span class="error"><%:error%> (<%:code%> <%=v%>)</span><% end %><br />
+ <%:a_s_packages_install%> '<%=k%>': <% if v == 0 then %><span class="ok"><%:ok%></span><% else %><span class="error"><%:error%> (<%=opkg_error(v)%>)</span><% end %><br />
<% end end %>
<% if remove then for k,v in pairs(remove) do %>
- <%:a_s_packages_remove%> '<%=k%>': <% if v == 0 then %><span class="ok"><%:ok%></span><% else %><span class="error"><%:error%> (<%:code%> <%=v%>)</span><% end %><br />
+ <%:a_s_packages_remove%> '<%=k%>': <% if v == 0 then %><span class="ok"><%:ok%></span><% else %><span class="error"><%:error%> (<%=opkg_error(v)%>)</span><% end %><br />
<% end end %>
</div>
<br />
<ul>
<li><a href="<%=REQUEST_URI%>/ipkg"><%:a_s_packages_ipkg%></a></li>
<li><a href="<%=REQUEST_URI%>?update=1"><%:a_s_packages_updatelist%></a></li>
- <li><a href="<%=REQUEST_URI%>?upgrade=1"><%:a_s_packages_upgrade%></a></li>
</ul>
<br />
<fieldset class="cbi-section-node">
<input class="cbi-input-save" type="submit" name="submit" value="<%:ok%>" />
</div>
</div>
-
+
<div class="cbi-value">
<label class="cbi-value-title"><%:filter%>:</label>
<div class="cbi-value-field">
<input type="submit" class="cbi-input-find" name="search" value="<%:a_s_packages_search%>" />
</div>
</div>
-
+
<table class="cbi-section-table">
<tr class="cbi-section-table-titles">
<th class="cbi-section-table-cell"><%:a_s_packages_name%></th>
<th class="cbi-section-table-cell"><%:delete%></th>
<th class="cbi-section-table-cell"><%:descr%></th>
</tr>
- <% for k, pkg in pairs(pkgs) do %>
+ <% for k, pkg in pairs(pkgs) do %>
<tr class="cbi-section-table-row cbi-rowstyle-<%=rowstyle()%>">
- <td><%=pkg.Package%></td>
- <td><%=pkg.Version%></td>
+ <td><%=luci.util.pcdata(pkg.Package)%></td>
+ <td><%=luci.util.pcdata(pkg.Version)%></td>
<td><% if not pkg.Status or not pkg.Status.installed then %><input type="checkbox" name="install.<%=pkg.Package%>" value="1" /><% else %><%:installed%><% end %></td>
<td><% if pkg.Status and pkg.Status.installed then %><input type="checkbox" name="remove.<%=pkg.Package%>" value="1" /><% else %><%:notinstalled%><% end %></td>
- <td><%=pkg.Description%></td>
+ <td><%=luci.util.pcdata(pkg.Description)%></td>
</tr>
<% end %>
</table>
-
+
<br />
-
+
<div style="text-align: right">
<input type="submit" class="cbi-input-apply" name="submit" value="<%:a_s_packages_do%>" />
</div>
</fieldset></fieldset>
</div>
</form>
-<%+footer%>
\ No newline at end of file
+<%+footer%>