in broker-plugins/management-http/src/main/java/resources/js/qpid/common/util.js [655:730]
util.getFormWidgetValues = function (form, initialData)
{
var values = {};
var formWidgets = form.getChildren();
for (var i in formWidgets)
{
var widget = formWidgets[i];
var value = widget.get("value") != "undefined" ? widget.get("value") : undefined;
var propName = widget.get("name") != "undefined" ? widget.get("name") : undefined;
var required = widget.get("required") != "undefined" ? widget.get("required") : undefined;
var excluded = widget.get("excluded") != "undefined" ? widget.get("excluded") : undefined;
var checked = widget.get("checked") != "undefined" ? widget.get("checked") : undefined;
var type = widget.get("type") != "undefined" ? widget.get("type") : undefined;
if (!excluded && propName && (value !== undefined || required))
{
if (widget instanceof dijit.form.RadioButton)
{
if (checked)
{
var currentValue = values[propName];
if (currentValue)
{
if (lang.isArray(currentValue))
{
currentValue.push(value)
}
else
{
values[propName] = [currentValue, value];
}
}
else
{
values[propName] = value;
}
}
}
else if (widget instanceof dijit.form.CheckBox)
{
values[propName] = checked;
}
else
{
if (type === "password" || widget.hasOwnProperty("secureAttribute"))
{
if (value)
{
values[propName] = value;
}
}
else
{
if (widget.hasOwnProperty("effectiveDefaultValue") &&
value === widget.effectiveDefaultValue && initialData &&
(initialData[propName] === null || initialData[propName] === undefined))
{
// widget value is effective default value, thus, skipping it...
continue;
}
values[propName] = value ? value : null;
}
}
}
}
if (initialData)
{
for (var propName in values)
{
if (values[propName] == initialData[propName])
{
delete values[propName];
}
}
}
return values;
};