bug 12271

-Show status field for project user management
-Properly refresh multi-edit widget
This commit is contained in:
Brian Federle 2011-12-02 07:52:54 -08:00
parent 10e551e737
commit 21cd27a8ed
2 changed files with 43 additions and 45 deletions

View File

@ -106,6 +106,7 @@
noSelect: true,
fields: {
'username': { edit: true, label: 'Account' },
'role': { edit: 'ignore', label: 'Role' },
'add-user': { addButton: true, label: '' }
},
add: {
@ -222,6 +223,7 @@
data: $.map(data.listprojectaccountsresponse.projectaccount, function(elem) {
return {
id: elem.accountid,
role: elem.role,
username: elem.role == 'Owner' ?
elem.account + ' (owner)' : elem.account
};

View File

@ -173,6 +173,8 @@
}
});
}
$(window).trigger('cloudStack.fullRefresh');
},
error: cloudStack.dialog.error
}
@ -385,7 +387,7 @@
error: function(args) { }
}
});
} else if (field.edit) {
} else if (field.edit && field.edit != 'ignore') {
if (field.range) {
var $range = $('<div>').addClass('range').appendTo($td);
@ -482,7 +484,7 @@
// Loading appearance
var $loading = _medit.loadingItem($multi, 'Adding...');
$dataBody.append($loading);
$dataBody.prepend($loading);
// Clear out fields
$multi.find('input').val('');
@ -510,21 +512,6 @@
complete: function(completeArgs) {
complete(args);
$loading.remove();
_medit.addItem(
data,
args.fields,
$multi,
itemData,
args.actions,
{
multipleAdd: multipleAdd,
noSelect: noSelect,
context: context,
ignoreEmptyFields: ignoreEmptyFields,
preFilter: actionPreFilter
}
).appendTo($dataBody);
},
error: function(args) {
@ -538,7 +525,7 @@
});
}
_medit.refreshItemWidths($multi);
$(window).trigger('cloudStack.fullRefresh');
},
error: cloudStack.dialog.error(function() {
@ -599,34 +586,43 @@
return true;
});
// Get existing data
dataProvider({
context: context,
response: {
success: function(args) {
$(args.data).each(function() {
var data = this;
var itemData = this._itemData;
_medit.addItem(
data,
fields,
$multi,
itemData,
actions,
{
multipleAdd: multipleAdd,
noSelect: noSelect,
context: $.extend(true, {}, context, this._context),
ignoreEmptyFields: ignoreEmptyFields,
preFilter: actionPreFilter
}
).appendTo($dataBody);
});
var getData = function() {
$multi.find('.data-item').remove();
dataProvider({
context: context,
response: {
success: function(args) {
$(args.data).each(function() {
var data = this;
var itemData = this._itemData;
_medit.addItem(
data,
fields,
$multi,
itemData,
actions,
{
multipleAdd: multipleAdd,
noSelect: noSelect,
context: $.extend(true, {}, context, this._context),
ignoreEmptyFields: ignoreEmptyFields,
preFilter: actionPreFilter
}
).appendTo($dataBody);
});
_medit.refreshItemWidths($multi);
},
error: cloudStack.dialog.error
}
_medit.refreshItemWidths($multi);
},
error: cloudStack.dialog.error
}
});
};
// Get existing data
getData();
$(window).bind('cloudStack.fullRefresh', function(event) {
getData();
});
$multi.bind('change select', function() {