$Id$
-%>
- <div class="cbi-section" id="cbi-<%=self.config%>-<%=self.sectiontype%>">
- <h2><%=self.title%></h2>
- <div class="cbi-section-descr"><%=self.description%></div>
- <div class="cbi-section-node">
- <%- local count = 0 -%>
- <table class="cbi-section-table">
- <tr class="cbi-section-table-titles">
- <%- for i, k in pairs(self.children) do -%>
- <th class="cbi-section-table-cell"><%=k.title%></th>
- <%- count = count + 1; end; if self.addremove then -%>
- <th class="cbi-section-table-cell"> </th>
- <%- count = count + 1; end -%>
- </tr>
- <tr class="cbi-section-table-descr">
- <%- for i, k in pairs(self.children) do -%>
- <th class="cbi-section-table-cell"><%=k.description%></th>
- <%- end; if self.addremove then -%>
- <th class="cbi-section-table-cell"> </th>
- <%- end -%>
- </tr>
- <%- for i, k in ipairs(self:cfgsections()) do
- if not self.anonymous then
- -%>
- <tr class="cbi-section-table-title">
- <th colspan="<%=count%>"><h3><%=k%></h3></th>
- </tr>
- <%- end
- section = k
- scope = { valueheader = "cbi/cell_valueheader", valuefooter = "cbi/cell_valuefooter" }
- -%>
- <tr class="cbi-section-table-row" id="cbi-<%=self.config%>-<%=section%>">
- <%-+cbi/ucisection-%>
- <%- if self.addremove then -%>
- <td class="cbi-section-table-cell">
- <input type="submit" name="cbi.rts.<%=self.config%>.<%=k%>" value="X" />
- </td>
- <%- end -%>
- </tr>
- <%- end -%>
+<%-
+local rowcnt = 1
+function rowstyle()
+ rowcnt = rowcnt + 1
+ return (rowcnt % 2) + 1
+end
+-%>
+
+<!-- tblsection -->
+<fieldset class="cbi-section" id="cbi-<%=self.config%>-<%=self.sectiontype%>">
+ <% if self.title and #self.title > 0 then -%>
+ <legend><%=self.title%></legend>
+ <%- end %>
+ <div class="cbi-section-descr"><%=self.description%></div>
+ <div class="cbi-section-node">
+ <%- local count = 0 -%>
+ <table class="cbi-section-table">
+ <tr class="cbi-section-table-titles">
+ <%- if not self.anonymous then -%>
+ <%- if self.sectionhead then -%>
+ <th class="cbi-section-table-cell"><%=self.sectionhead%></th>
+ <%- else -%>
+ <th> </th>
+ <%- end -%>
+ <%- end -%>
+ <%- for i, k in pairs(self.children) do if not k.optional then -%>
+ <th class="cbi-section-table-cell">
+ <%- if k.titleref then -%><a title="<%=self.titledesc or translate(' ')%>" class="cbi-title-ref" href="<%=k.titleref%>"><%- end -%>
+ <%-=k.title-%>
+ <%- if k.titleref then -%></a><%- end -%>
+ </th>
+ <%- count = count + 1; end; end; if self.extedit or self.addremove then -%>
+ <th class="cbi-section-table-cell"> </th>
+ <%- count = count + 1; end -%>
+ </tr>
+ <tr class="cbi-section-table-descr">
+ <%- if not self.anonymous then -%>
+ <%- if self.sectiondesc then -%>
+ <th class="cbi-section-table-cell"><%=self.sectiondesc%></th>
+ <%- else -%>
+ <th></th>
+ <%- end -%>
+ <%- end -%>
+ <%- for i, k in pairs(self.children) do if not k.optional then -%>
+ <th class="cbi-section-table-cell"><%=k.description%></th>
+ <%- end; end; if self.extedit or self.addremove then -%>
+ <th class="cbi-section-table-cell"></th>
+ <%- end -%>
+ </tr>
+ <%- local isempty = true
+ for i, k in ipairs(self:cfgsections()) do
+ section = k
+ isempty = false
+ scope = { valueheader = "cbi/cell_valueheader", valuefooter = "cbi/cell_valuefooter" }
+ -%>
+ <tr class="cbi-section-table-row<% if self.extedit or self.rowcolors then %> cbi-rowstyle-<%=rowstyle()%><% end %>" id="cbi-<%=self.config%>-<%=section%>">
+ <% if not self.anonymous then -%>
+ <th><h3><%=k%></h3></th>
+ <%- end %>
- <%- if self.addremove then -%>
- <tr class="cbi-section-table-row">
- <td colspan="<%=count%>" class="cbi-section-table-optionals">
- <div class="cbi-section-create">
- <% if self.anonymous then %>
- <input type="submit" name="cbi.cts.<%=self.config%>.<%=self.sectiontype%>" value="<%:cbi_add%>" />
- <% else %>
- <input type="text" class="cbi-section-create-name" name="cbi.cts.<%=self.config%>.<%=self.sectiontype%>" />
- <input type="submit" value="<%:cbi_add%>" />
- <% end %>
- <% if self.err_invalid then %>
- <div class="cbi-error"><%:cbi_invalid%></div>
- <% end %>
- </div>
- </td>
- </tr>
+ <%-
+ for k, node in ipairs(self.children) do
+ if not node.optional then
+ node:render(section, scope or {})
+ end
+ end
+ -%>
+
+ <%- if self.extedit or self.addremove then -%>
+ <td class="cbi-section-table-cell">
+ <%- if self.extedit then -%>
+ <a href="
+ <%- if type(self.extedit) == "string" then -%>
+ <%=self.extedit:format(section)%>
+ <%- elseif type(self.extedit) == "function" then -%>
+ <%=self:extedit(section)%>
<%- end -%>
- </table>
- </div>
- </div>
+ " title="<%:Edit%>"><img style="border: none" src="<%=resource%>/cbi/edit.gif" alt="<%:Edit%>" /></a>
+ <%- end; if self.addremove then %>
+ <input type="image" value="<%:Delete%>" name="cbi.rts.<%=self.config%>.<%=k%>" alt="<%:Delete%>" title="<%:Delete%>" src="<%=resource%>/cbi/remove.gif" />
+ <%- end -%>
+ </td>
+ <%- end -%>
+ </tr>
+ <%- end -%>
+
+ <%- if isempty then -%>
+ <tr class="cbi-section-table-row">
+ <td colspan="<%=count%>"><em><br /><%:This section contains no values yet%></em></td>
+ </tr>
+ <%- end -%>
+ </table>
+
+ <% if self.error then %>
+ <div class="cbi-section-error">
+ <ul><% for _, c in pairs(self.error) do for _, e in ipairs(c) do -%>
+ <li><%=pcdata(e):gsub("\n","<br />")%></li>
+ <%- end end %></ul>
+ </div>
+ <% end %>
+
+ <%- if self.addremove then -%>
+ <% if self.template_addremove then include(self.template_addremove) else -%>
+ <div class="cbi-section-create cbi-tblsection-create">
+ <% if self.anonymous then %>
+ <input class="cbi-button cbi-button-add" type="submit" value="<%:Add%>" name="cbi.cts.<%=self.config%>.<%=self.sectiontype%>" title="<%:Add%>" />
+ <% else %>
+ <% if self.invalid_cts then -%><div class="cbi-section-error"><% end %>
+ <input type="text" class="cbi-section-create-name" name="cbi.cts.<%=self.config%>.<%=self.sectiontype%>" />
+ <input class="cbi-button cbi-button-add" type="submit" value="<%:Add%>" title="<%:Add%>" />
+ <% if self.invalid_cts then -%>
+ <br /><%:Invalid%></div>
+ <%- end %>
+ <% end %>
+ </div>
+ <%- end %>
+ <%- end -%>
+ </div>
+</fieldset>
+<!-- /tblsection -->