mirror of
https://git.proxmox.com/git/proxmox-widget-toolkit
synced 2025-05-29 23:03:21 +00:00
form: add Proxmox.form.field.ExpireDate
Behaves like a 'datefield' but treats the 0/empty value as "never", and sets all defaults for behaving like one would expect from a date expire field. This allows to replaces hacks (e.g. [0]) from our various expire date fields, mostly in PVE/PMG user accounts, and also for the soon to be applied API token gui. [0]: https://git.proxmox.com/?p=pve-manager.git;a=blob;f=www/manager6/dc/UserEdit.js;h=40c4044fd9364c9bcb8787507068378ed9936f67;hb=806edfe19f049f07db2628c68e4e5702bbedd9d7#l159 Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
parent
7d16f8b34c
commit
4645c3d413
1
Makefile
1
Makefile
@ -15,6 +15,7 @@ JSSRC= \
|
|||||||
data/ObjectStore.js \
|
data/ObjectStore.js \
|
||||||
data/RRDStore.js \
|
data/RRDStore.js \
|
||||||
data/TimezoneStore.js \
|
data/TimezoneStore.js \
|
||||||
|
form/ExpireDate.js \
|
||||||
form/IntegerField.js \
|
form/IntegerField.js \
|
||||||
form/TextField.js \
|
form/TextField.js \
|
||||||
form/DateTimeField.js \
|
form/DateTimeField.js \
|
||||||
|
34
form/ExpireDate.js
Normal file
34
form/ExpireDate.js
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
// treats 0 as "never expires"
|
||||||
|
Ext.define('Proxmox.form.field.ExpireDate', {
|
||||||
|
extend: 'Ext.form.field.Date',
|
||||||
|
alias: ['widget.pmxExpireDate'],
|
||||||
|
|
||||||
|
name: 'expire',
|
||||||
|
fieldLabel: gettext('Expire'),
|
||||||
|
emptyText: 'never',
|
||||||
|
format: 'Y-m-d',
|
||||||
|
submitFormat: 'U',
|
||||||
|
|
||||||
|
getSubmitValue: function() {
|
||||||
|
let me = this;
|
||||||
|
|
||||||
|
let value = me.callParent();
|
||||||
|
if (!value) value = 0;
|
||||||
|
|
||||||
|
return value;
|
||||||
|
},
|
||||||
|
|
||||||
|
setValue: function(value) {
|
||||||
|
let me = this;
|
||||||
|
|
||||||
|
if (Ext.isDefined(value)) {
|
||||||
|
if (!value) {
|
||||||
|
value = null;
|
||||||
|
} else if (!Ext.isDate(value)) {
|
||||||
|
value = new Date(value * 1000);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
me.callParent([value]);
|
||||||
|
},
|
||||||
|
|
||||||
|
});
|
Loading…
Reference in New Issue
Block a user