Commit 181b5b16 authored by Sven Franck's avatar Sven Franck

added reset-state property to form

parent 08317c8b
......@@ -9,6 +9,7 @@
"dynamic_children": [0],
"requires_authentication": true,
"depends_on": "login_state",
"reset": "login_state",
"allow_new": true
},
"children": [{
......
......@@ -1167,6 +1167,11 @@
spec.depend = spec.property_dict.depends_on;
}
// set state reset flag
if (spec.property_dict.resets) {
spec.reset = spec.property_dict.resets;
}
// when updating we only need a fragment container. Otherwise we
// generate the full gadget
if (update) {
......@@ -1232,6 +1237,11 @@
spec.depend = spec.property_dict.depends_on;
}
// set state reset flag
if (spec.property_dict.resets) {
spec.reset = spec.property_dict.resets;
}
// set placeholders
placeholder = spec.placeholder_dict || {};
......@@ -1329,18 +1339,24 @@
* @return {object} fragment
**/
"fieldlist": function (spec, answer, field_dict, update, url_pointer) {
var i, element, target, placeholder, update_gadget;
var i, element, target, placeholder, update_gadget, reset_state;
// set update of gadget flag
if (spec.property_dict.depends_on) {
update_gadget = spec.property_dict.depends_on;
}
// set state reset flag
if (spec.property_dict.reset) {
reset_state = spec.property_dict.reset;
}
// set placeholders
placeholder = spec.placeholder_dict || {};
// no auth, no allow
if (answer === null) {
spec.reset = reset_state;
spec.depend = update_gadget;
target = factory.util.wrapInForm(spec);
target.appendChild(app.noItemsFound(placeholder.no_auth));
......@@ -1372,6 +1388,7 @@
}
}
element.depend = update_gadget;
element.reset = reset_state;
element.form = spec.form;
element.fields = field_dict;
element.id = spec.id;
......@@ -1634,7 +1651,10 @@
"className": (spec.class_list || "")
},
{"data-ajax": false, "autocomplete":"off"},
{"data-depend": spec.depend || null}
{
"data-depend": spec.depend || null,
"data-reset": spec.reset || null
}
);
}
return document.createDocumentFragment();
......@@ -3789,6 +3809,7 @@
})
.then(function(answer) {
// TODO: This is not the correct place to run all status updates!
if (answer.response.result === "success") {
switch (config.gadget.getAttribute("data-reset")) {
case "login_state":
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment