libs/web: show input/forward hints in zonelist widget only if bnoth allowany and...
[project/luci.git] / libs / web / luasrc / view / cbi / firewall_zonelist.htm
index 037b750..53fa836 100644 (file)
@@ -1,16 +1,3 @@
-<%#
-LuCI - Lua Configuration Interface
-Copyright 2009 Jo-Philipp Wich <xm@subsignal.org>
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-$Id$
-
--%>
 <%+cbi/valueheader%>
 
 <%-
@@ -40,9 +27,19 @@ $Id$
 <ul style="margin:0; list-style-type:none; text-align:left">
        <% if self.allowlocal then %>
        <li style="padding:0.5em">
-               <input class="cbi-input-radio" onclick="cbi_d_update(this.id)" onchange="cbi_d_update(this.id)"<%=attr("type", self.widget or "radio") .. attr("id", cbid .. "_empty") .. attr("name", cbid) .. attr("value", "") .. ifattr(checked[""], "checked", "checked")%> /> &nbsp;
+               <input class="cbi-input-radio" onclick="cbi_d_update(this.id)" onchange="cbi_d_update(this.id)"<%=attr("type", self.widget or "radio") .. attr("id", cbid .. "_empty") .. attr("name", cbid) .. attr("value", "") .. ifattr(checked[""], "checked", "checked")%> /> &#160;
                <label<%=attr("for", cbid .. "_empty")%> style="background-color:<%=fwm.zone.get_color()%>; padding:0.5em">
                        <strong><%:Device%></strong>
+                       <% if self.allowany and self.allowlocal then %>(<%:input%>)<% end %>
+               </label>
+       </li>
+       <% end %>
+       <% if self.allowany then %>
+       <li style="padding:0.5em">
+               <input class="cbi-input-radio" onclick="cbi_d_update(this.id)" onchange="cbi_d_update(this.id)"<%=attr("type", self.widget or "radio") .. attr("id", cbid .. "_any") .. attr("name", cbid) .. attr("value", "*") .. ifattr(checked["*"], "checked", "checked")%> /> &#160;
+               <label<%=attr("for", cbid .. "_any")%> style="background-color:<%=fwm.zone.get_color()%>; padding:0.5em">
+                       <strong><%:Any zone%></strong>
+                       <% if self.allowany and self.allowlocal then %>(<%:forward%>)<% end %>
                </label>
        </li>
        <% end %>
@@ -52,7 +49,7 @@ $Id$
                                selected = selected or (value == zone:name())
        %>
        <li style="padding:0.5em">
-               <input class="cbi-input-radio" onclick="cbi_d_update(this.id)" onchange="cbi_d_update(this.id)"<%=attr("type", self.widget or "radio") .. attr("id", cbid .. "." .. zone:name()) .. attr("name", cbid) .. attr("value", zone:name()) .. ifattr(checked[zone:name()], "checked", "checked")%> /> &nbsp;
+               <input class="cbi-input-radio" onclick="cbi_d_update(this.id)" onchange="cbi_d_update(this.id)"<%=attr("type", self.widget or "radio") .. attr("id", cbid .. "." .. zone:name()) .. attr("name", cbid) .. attr("value", zone:name()) .. ifattr(checked[zone:name()], "checked", "checked")%> /> &#160;
                <label<%=attr("for", cbid .. "." .. zone:name())%> style="background-color:<%=zone:get_color()%>; padding:0.5em">
                        <strong><%=zone:name()%>:</strong>
                        <%
@@ -62,7 +59,7 @@ $Id$
                                        if net then
                                                zempty = false
                        %>
-                               &nbsp;
+                               &#160;
                                <%- if net:name() == self.network then -%>
                                        <span style="background-color:#FFFFFF; border:1px solid #000000; padding:2px; font-weight:bold"><%=net:name()%>:
                                <%- else -%>
@@ -70,7 +67,7 @@ $Id$
                                <%- end -%>
                                <%
                                        local nempty = true
-                                       for _, iface in ipairs(net and net:get_interfaces() or {}) do
+                                       for _, iface in ipairs(net:is_bridge() and net:get_interfaces() or { net:get_interface() }) do
                                                nempty = false
                                 %>
                                        <img<%=attr("title", iface:get_i18n())%> style="width:16px; height:16px; vertical-align:middle" src="<%=resource%>/icons/<%=iface:type()%><%=iface:is_up() and "" or "_disabled"%>.png" />
@@ -85,9 +82,9 @@ $Id$
 
        <% if self.widget ~= "checkbox" and not self.nocreate then %>
        <li style="padding:0.5em">
-               <input class="cbi-input-radio" onclick="cbi_d_update(this.id)" onchange="cbi_d_update(this.id)" type="radio"<%=attr("id", cbid .. "_new") .. attr("name", cbid) .. attr("value", "-") .. ifattr(not selected, "checked", "checked")%> /> &nbsp;
+               <input class="cbi-input-radio" onclick="cbi_d_update(this.id)" onchange="cbi_d_update(this.id)" type="radio"<%=attr("id", cbid .. "_new") .. attr("name", cbid) .. attr("value", "-") .. ifattr(not selected, "checked", "checked")%> /> &#160;
                <div style="background-color:<%=fwm.zone.get_color()%>; padding:0.5em; display:inline">
-                       <label<%=attr("for", cbid .. "_new")%>><em><%:unspecified -or- create:%>&nbsp;</em></label>
+                       <label<%=attr("for", cbid .. "_new")%>><em><%:unspecified -or- create:%>&#160;</em></label>
                        <input style="width:6em" type="text"<%=attr("name", cbid .. ".newzone") .. ifattr(not selected, "value", luci.http.formvalue(cbid .. ".newzone") or self.default)%> onfocus="document.getElementById('<%=cbid%>_new').checked=true" />
                </div>
        </li>