}
function cbi_d_check(deps) {
+ var reverse;
+ var def = false;
for (var i=0; i<deps.length; i++) {
- var istat = true
+ var istat = true;
+ reverse = false;
for (var j in deps[i]) {
- istat = (istat && cbi_d_checkvalue(j, deps[i][j]))
+ if (j.slice(-8) == "!reverse") {
+ reverse = true;
+ } else if (j.slice(-8) == "!default") {
+ def = true;
+ istat = false;
+ } else {
+ istat = (istat && cbi_d_checkvalue(j, deps[i][j]))
+ }
}
if (istat) {
- return true
+ return !reverse;
}
}
+ return def;
}
function cbi_d_update() {
self.current = newcurrent or self.current
self.active = self:get(self.current)
if type(self.active) ~= "function" then
+ self.active:populate_delegator(self)
self.active:parse(false)
return FROM_PROCEED
else
<% for _, x in ipairs(self.chain) do %>
<input type="hidden" name="cbi.delg.path" value="<%=x%>" />
<% end %>
+<% if not self.disallow_pageactions then %>
<% if self.allow_back and self:get_prev(self.current) then %>
<input class="cbi-button cbi-button-back" type="submit" name="cbi.delg.back" value="<%:« Back%>" />
<% end %>
<input class="cbi-button cbi-button-finish" type="submit" value="<%:Finish%>" />
<% elseif self:get_next(self.current) then %>
<input class="cbi-button cbi-button-next" type="submit" value="<%:Next »%>" />
+<% end %>
<% end %>
<script type="text/javascript">cbi_d_update();</script>
- </div>
+ </div>
\ No newline at end of file
-%>
<%+header%>
-<form method="post" action="<%=REQUEST_URI%>" enctype="multipart/form-data">
+<form method="post" name="cbi" action="<%=REQUEST_URI%>" enctype="multipart/form-data">
<div>
<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
<input type="hidden" name="cbi.submit" value="1" />