Merge pull request #25253 from owncloud/users-fixotherquotadropdown
Fix "Other" value handling in quota dropdown in users page
This commit is contained in:
commit
a48df671a3
|
@ -138,10 +138,13 @@ var UserList = {
|
||||||
.find('option').attr('selected', null)
|
.find('option').attr('selected', null)
|
||||||
.first().attr('selected', 'selected');
|
.first().attr('selected', 'selected');
|
||||||
} else {
|
} else {
|
||||||
if ($quotaSelect.find('option').filterAttr('value', user.quota).length > 0) {
|
var $options = $quotaSelect.find('option');
|
||||||
$quotaSelect.find('option').filterAttr('value', user.quota).attr('selected', 'selected');
|
var $foundOption = $options.filterAttr('value', user.quota);
|
||||||
|
if ($foundOption.length > 0) {
|
||||||
|
$foundOption.attr('selected', 'selected');
|
||||||
} else {
|
} else {
|
||||||
$quotaSelect.append('<option value="' + escapeHTML(user.quota) + '" selected="selected">' + escapeHTML(user.quota) + '</option>');
|
// append before "Other" entry
|
||||||
|
$options.last().before('<option value="' + escapeHTML(user.quota) + '" selected="selected">' + escapeHTML(user.quota) + '</option>');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -576,6 +579,15 @@ var UserList = {
|
||||||
var $select = $(ev.target);
|
var $select = $(ev.target);
|
||||||
var uid = UserList.getUID($select);
|
var uid = UserList.getUID($select);
|
||||||
var quota = $select.val();
|
var quota = $select.val();
|
||||||
|
if (quota === 'other') {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (isNaN(parseInt(quota, 10)) || parseInt(quota, 10) < 0) {
|
||||||
|
// the select component has added the bogus value, delete it again
|
||||||
|
$select.find('option[selected]').remove();
|
||||||
|
OC.Notification.showTemporary(t('core', 'Invalid quota value "{val}"', {val: quota}));
|
||||||
|
return;
|
||||||
|
}
|
||||||
UserList._updateQuota(uid, quota, function(returnedQuota){
|
UserList._updateQuota(uid, quota, function(returnedQuota){
|
||||||
if (quota !== returnedQuota) {
|
if (quota !== returnedQuota) {
|
||||||
$select.find(':selected').text(returnedQuota);
|
$select.find(':selected').text(returnedQuota);
|
||||||
|
|
Loading…
Reference in New Issue