diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2016-02-10 19:33:01 +0100 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2016-02-10 19:33:01 +0100 |
commit | afdc349ab4ff6bc89b0527f36d5197b7896d86f4 (patch) | |
tree | a4d637e16fa73863b4652f1583408e8aaa89ce77 /modules | |
parent | 8f409a45abb8cc4fda068c6a24085c467f3e37d8 (diff) |
luci-base: cbi: rework ListValue and MultiValue templates
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
Diffstat (limited to 'modules')
-rw-r--r-- | modules/luci-base/luasrc/view/cbi/lvalue.htm | 50 | ||||
-rw-r--r-- | modules/luci-base/luasrc/view/cbi/mvalue.htm | 51 |
2 files changed, 74 insertions, 27 deletions
diff --git a/modules/luci-base/luasrc/view/cbi/lvalue.htm b/modules/luci-base/luasrc/view/cbi/lvalue.htm index ac63e9efd..61759fdd4 100644 --- a/modules/luci-base/luasrc/view/cbi/lvalue.htm +++ b/modules/luci-base/luasrc/view/cbi/lvalue.htm @@ -1,18 +1,42 @@ +<% + local i, key + local br = self.orientation == "horizontal" and ' ' or '<br />' +%> + <%+cbi/valueheader%> <% if self.widget == "select" then %> - <select class="cbi-input-select" data-update="change"<%= attr("id", cbid) .. attr("name", cbid) .. ifattr(self.size, "size") %>> - <% for i, key in pairs(self.keylist) do -%> - <option id="cbi-<%=self.config.."-"..section.."-"..self.option.."-"..key%>"<%= attr("value", key) .. ifattr(tostring(self:cfgvalue(section) or self.default) == key, "selected", "selected") .. attr("data-index", i) .. attr("data-depends", self:deplist2json(section, self.deplist[i])) %>><%=striptags(self.vallist[i])%></option> - <%- end %> + <select class="cbi-input-select" data-update="change"<%= + attr("id", cbid) .. + attr("name", cbid) .. + ifattr(self.size, "size") + %>> + <% for i, key in pairs(self.keylist) do -%> + <option<%= + attr("id", cbid.."-"..key) .. + attr("value", key) .. + attr("data-index", i) .. + attr("data-depends", self:deplist2json(section, self.deplist[i])) .. + ifattr(tostring(self:cfgvalue(section) or self.default) == key, "selected", "selected") + %>><%=pcdata(self.vallist[i])%></option> + <%- end %> </select> -<% elseif self.widget == "radio" then - local c = 0 - for i, key in pairs(self.keylist) do - c = c + 1 -%> - <input class="cbi-input-radio" data-update="click change" type="radio"<%= attr("id", cbid.."-"..key) .. attr("name", cbid) .. attr("value", key) .. ifattr((self:cfgvalue(section) or self.default) == key, "checked", "checked") .. attr("data-index", i) .. attr("data-depends", self:deplist2json(section, self.deplist[i])) %> /> - <label<%= attr("for", cbid.."-"..key) %>><%=self.vallist[i]%></label> -<% if c == self.size then c = 0 %><% if self.orientation == "horizontal" then %> <% else %><br /><% end %> -<% end end %> +<% elseif self.widget == "radio" then %> + <div<%= attr("id", cbid) %>> + <% for i, key in pairs(self.keylist) do %> + <label<%= + attr("id", cbid.."-"..key) .. + attr("data-index", i) .. + attr("data-depends", self:deplist2json(section, self.deplist[i])) + %>> + <input class="cbi-input-radio" data-update="click change" type="radio"<%= + attr("name", cbid) .. + attr("value", key) .. + ifattr((self:cfgvalue(section) or self.default) == key, "checked", "checked") + %> /> + <%=pcdata(self.vallist[i])%> + </label> + <% if i == self.size then write(br) end %> + <% end %> + </div> <% end %> <%+cbi/valuefooter%> diff --git a/modules/luci-base/luasrc/view/cbi/mvalue.htm b/modules/luci-base/luasrc/view/cbi/mvalue.htm index 79950cee2..ccdd6fcab 100644 --- a/modules/luci-base/luasrc/view/cbi/mvalue.htm +++ b/modules/luci-base/luasrc/view/cbi/mvalue.htm @@ -1,19 +1,42 @@ -<% local v = self:valuelist(section) or {} -%> +<% + local i, key + local v = self:valuelist(section) or {} +-%> + <%+cbi/valueheader%> <% if self.widget == "select" then %> - <select class="cbi-input-select" multiple="multiple" data-update="click change"<%= attr("name", cbid) .. ifattr(self.size, "size") %>> - <% for i, key in pairs(self.keylist) do -%> - <option<%= attr("id", cbid.."-"..key) .. attr("value", key) .. ifattr(luci.util.contains(v, key), "selected", "selected") .. attr("data-index", i) .. attr("data-depends", self:deplist2json(section, self.deplist[i])) %>><%=striptags(self.vallist[i])%></option> - <%- end %> + <select class="cbi-input-select" multiple="multiple" data-update="click change"<%= + attr("id", cbid) .. + attr("name", cbid) .. + ifattr(self.size, "size") + %>> + <% for i, key in pairs(self.keylist) do -%> + <option<%= + attr("id", cbid.."-"..key) .. + attr("value", key) .. + attr("data-index", i) .. + attr("data-depends", self:deplist2json(section, self.deplist[i])) .. + ifattr(luci.util.contains(v, key), "selected", "selected") + %>><%=pcdata(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 class="cbi-input-checkbox" type="checkbox" data-update="click change"<%= attr("id", cbid.."-"..key) .. attr("name", cbid) .. attr("value", key) .. ifattr(luci.util.contains(v, key), "checked", "checked") .. attr("data-index", i) .. attr("data-depends", self:deplist2json(section, self.deplist[i])) %> /> - <label<%= attr("for", cbid.."-"..key) %>><%=self.vallist[i]%></label><br /> -<% if c == self.size then c = 0 %><br /> -<% end end %> +<% elseif self.widget == "checkbox" then %> + <div<%= attr("id", cbid) %>> + <% for i, key in pairs(self.keylist) do %> + <label<%= + attr("id", cbid.."-"..key) .. + attr("data-index", i) .. + attr("data-depends", self:deplist2json(section, self.deplist[i])) + %>> + <input class="cbi-input-checkbox" type="checkbox" data-update="click change"<%= + attr("name", cbid) .. + attr("value", key) .. + ifattr(luci.util.contains(v, key), "checked", "checked") + %> /> + <%=pcdata(self.vallist[i])%> + </label> + <% if i == self.size then write('<br />') end %> + <% end %> + </div> <% end %> <%+cbi/valuefooter%> |