luci-base: rework CBI footer template
authorJo-Philipp Wich <jo@mein.io>
Wed, 18 Jul 2018 09:46:46 +0000 (11:46 +0200)
committerJo-Philipp Wich <jo@mein.io>
Wed, 18 Jul 2018 10:05:05 +0000 (12:05 +0200)
- Make sure that hitting enter in the form hits the CBI save action and not
  apply or cancel
- Hide action panel if no actions are available
- CLeanup code

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
modules/luci-base/luasrc/view/cbi/footer.htm

index 5f939b646975b5cbf3cd6df43fbfced9cbbd3a0d..ed632202ce05958e2f1da24538a357d9bde36530 100644 (file)
@@ -1,23 +1,39 @@
-       <%- if pageaction then -%>
-       <div class="cbi-page-actions">
-               <% if redirect and not flow.hidebackbtn then %>
-                       <input class="cbi-button cbi-button-link" type="button" value="<%:Back to Overview%>" onclick="location.href='<%=pcdata(redirect)%>'" />
-               <% end %>
-
-               <% if flow.skip then %>
-                       <input class="cbi-button cbi-button-skip" type="submit" name="cbi.skip" value="<%:Skip%>" />
-               <% end %>
-               <% if not autoapply and not flow.hideapplybtn then %>
-                       <input class="cbi-button cbi-button-apply" type="submit" name="cbi.apply" value="<%:Save & Apply%>" />
-               <% end %>
-               <% if not flow.hidesavebtn then %>
-                       <input class="cbi-button cbi-button-save" type="submit" value="<%:Save%>" />
-               <% end %>
-               <% if not flow.hideresetbtn then %>
-                       <input class="cbi-button cbi-button-reset" type="button" value="<%:Reset%>" onclick="location.href='<%=REQUEST_URI%>'" />
-               <% end %>
-       </div>
-       <%- end -%>
+<%
+       local display_back  = (redirect and not flow.hidebackbtn)
+       local display_skip  = (flow.skip)
+       local display_apply = (not autoapply and not flow.hideapplybtn)
+       local display_save  = (not flow.hidesavebtn)
+       local display_reset = (not flow.hideresetbtn)
+
+       if pageaction and
+          (display_back or display_skip or display_apply or display_save or display_reset)
+       then
+               %><div class="cbi-page-actions"><%
+
+               if display_back then
+                       %><input class="cbi-button cbi-button-link" type="button" value="<%:Back to Overview%>" onclick="location.href='<%=pcdata(redirect)%>'" /> <%
+               end
+
+               if display_skip then
+                       %><input class="cbi-button cbi-button-skip" type="button" value="<%:Skip%>" onclick="cbi_submit(this, 'cbi.skip')" /> <%
+               end
+
+               if display_apply then
+                       %><input class="cbi-button cbi-button-apply" type="button" value="<%:Save & Apply%>" onclick="cbi_submit(this, 'cbi.apply')" /> <%
+               end
+
+               if display_save then
+                       %><input class="cbi-button cbi-button-save" type="submit" value="<%:Save%>" /> <%
+               end
+
+               if display_reset then
+                       %><input class="cbi-button cbi-button-reset" type="button" value="<%:Reset%>" onclick="location.href='<%=REQUEST_URI%>'" /> <%
+               end
+
+               %></div><%
+       end
+%>
+
 </form>
 
 <script type="text/javascript">cbi_init();</script>