luci-base: fixed tabbed map when using NamedSection of same type
[project/luci.git] / modules / luci-base / luasrc / view / cbi / map.htm
index 7f256ad..e3210ad 100644 (file)
        <%- if firstmap and applymap then cbi_apply_xhr(self.config, parsechain, redirect) end -%>
 
        <% if self.tabbed then %>
-               <ul class="cbi-tabmenu">
+               <ul class="cbi-tabmenu map">
                        <%- self.selected_tab = luci.http.formvalue("tab.m-" .. self.config) %>
                        <% for i, section in ipairs(self.children) do %>
-                               <script type="text/javascript">cbi_c['container.m-<%=self.config%>.<%=section.sectiontype%>'] = 1;</script>
                                <%- if not self.selected_tab then self.selected_tab = section.sectiontype end %>
-                               <li id="tab.m-<%=self.config%>.<%=section.sectiontype%>" class="cbi-tab<%=(section.sectiontype == self.selected_tab) and '' or '-disabled'%>">
-                                       <a onclick="this.blur(); return cbi_t_switch('m-<%=self.config%>', '<%=section.sectiontype%>')" href="<%=REQUEST_URI%>?tab.m-<%=self.config%>=<%=section.sectiontype%>"><%=section.title or section.sectiontype %></a>
-                                       <% if section.sectiontype == self.selected_tab then %><input type="hidden" id="tab.m-<%=self.config%>" name="tab.m-<%=self.config%>" value="<%=section.sectiontype%>" /><% end %>
+                               <li id="tab.m-<%=self.config%>.<%=section.section or section.sectiontype%>" class="cbi-tab<%=(section.sectiontype == self.selected_tab) and '' or '-disabled'%>">
+                                       <a onclick="this.blur(); return cbi_t_switch('m-<%=self.config%>', '<%=section.section or section.sectiontype%>')" href="<%=REQUEST_URI%>?tab.m-<%=self.config%>=<%=section.section or section.sectiontype%>"><%=section.title or section.section or section.sectiontype %></a>
+                                       <% if section.sectiontype == self.selected_tab then %><input type="hidden" id="tab.m-<%=self.config%>" name="tab.m-<%=self.config%>" value="<%=section.section or section.sectiontype%>" /><% end %>
                                </li>
                        <% end %>
                </ul>
+               <br />
                <% for i, section in ipairs(self.children) do %>
-                       <div class="cbi-tabcontainer" id="container.m-<%=self.config%>.<%=section.sectiontype%>"<% if section.sectiontype ~= self.selected_tab then %> style="display:none"<% end %>>
+                       <div class="cbi-tabcontainer" id="container.m-<%=self.config%>.<%=section.section or section.sectiontype%>"<% if section.sectiontype ~= self.selected_tab then %> style="display:none"<% end %>>
                                <% section:render() %>
                        </div>
-                       <script type="text/javascript">cbi_t_add('m-<%=self.config%>', '<%=section.sectiontype%>')</script>
+                       <script type="text/javascript">cbi_t_add('m-<%=self.config%>', '<%=section.section or section.sectiontype%>')</script>
                <% end %>
+
+               <% if not self.save then -%>
+                       <div class="cbi-section-error">
+                               <% for _, section in ipairs(self.children) do %>
+                                       <% if section.error and section.error[section.section] then -%>
+                                               <ul><li>
+                                                       <%:One or more invalid/required values on tab%>:&nbsp;<%=section.title or section.section or section.sectiontype%>
+                                               </li></ul>
+                                       <%- end %>
+                               <% end %>
+                       </div>
+               <%- end %>
        <% else %>
                <%- self:render_children() %>
        <% end %>
+
        <br />
 </div>