-%>
<%
-local v = self:valuelist(section)
+local v = self:valuelist(section) or {}
%>
<%+cbi/valueheader%>
<% if self.widget == "select" then %>
- <select multiple="multiple" name="cbid.<%=self.config.."."..section.."."..self.option%>"<% if self.size then %> size="<%=self.size%>"<% end %>>
-<%for i, key in pairs(self.keylist) do %>
- <option<% if luci.util.contains(v, key) then %> selected="selected"<% end %> value="<%=key%>"><%=self.vallist[i]%></option>
-<% end %>
- </select>
+ <select class="cbi-input-select" multiple="multiple"<%= attr("name", cbid) .. ifattr(self.size, "size") %>>
+ <% for i, key in pairs(self.keylist) do -%>
+ <option<%= attr("value", key) .. ifattr(luci.util.contains(v, key), "selected", "selected") %>><%=striptags(self.vallist[i])%></option>
+ <%- end %>
+ </select>
<% elseif self.widget == "checkbox" then
local c = 0;
for i, key in pairs(self.keylist) do
- c = c + 1%>
- <input type="checkbox" id="cbid.<%=self.config.."."..section.."."..self.option.."."..i%>" name="cbid.<%=self.config.."."..section.."."..self.option%>"<% if luci.util.contains(v, key) then %> checked="checked"<% end %> value="<%=key%>" />
- <label for="cbid.<%=self.config.."."..section.."."..self.option.."."..i%>"><%=self.vallist[i]%></label><br />
+ c = c + 1
+%>
+ <input class="cbi-input-checkbox" type="checkbox"<%= attr("id", cbid..c) .. attr("name", cbid) .. attr("value", key) .. ifattr(luci.util.contains(v, key), "checked", "checked") %> />
+ <label<%= attr("for", cbid..c) %>><%=self.vallist[i]%></label><br />
<% if c == self.size then c = 0 %><br />
<% end end %>
<% end %>