]>
Commit | Line | Data |
---|---|---|
41e43880 TL |
1 | Ext.define('PBS.data.CalendarEventExamples', { |
2 | extend: 'Ext.data.Store', | |
3 | alias: 'store.calendarEventExamples', | |
4 | ||
5 | field: ['value', 'text'], | |
6 | data: [ | |
ea3ce82a | 7 | { value: '*/30', text: Ext.String.format(gettext("Every {0} minutes"), 30) }, |
41e43880 | 8 | { value: 'hourly', text: gettext("Every hour") }, |
ea3ce82a | 9 | { value: '*/2:00', text: gettext("Every two hours") }, |
41e43880 TL |
10 | { value: '2,22:30', text: gettext("Every day") + " 02:30, 22:30" }, |
11 | { value: 'daily', text: gettext("Every day") + " 00:00" }, | |
12 | { value: 'mon..fri', text: gettext("Monday to Friday") + " 00:00" }, | |
ea3ce82a | 13 | { value: 'mon..fri *:00', text: gettext("Monday to Friday") + ', ' + gettext("hourly") }, |
41e43880 | 14 | { value: 'sat 18:15', text: gettext("Every Saturday") + " 18:15" }, |
ea3ce82a TL |
15 | { value: 'monthly', text: gettext("Every first day of the Month") + " 00:00" }, |
16 | { value: 'sat *-1..7 02:00', text: gettext("Every first Saturday of the month") + " 02:00" }, | |
17 | { value: 'yearly', text: gettext("First day of the year") + " 00:00" }, | |
41e43880 TL |
18 | ], |
19 | }); | |
20 | ||
21 | Ext.define('PBS.form.CalendarEvent', { | |
22 | extend: 'Ext.form.field.ComboBox', | |
23 | xtype: 'pbsCalendarEvent', | |
24 | ||
25 | editable: true, | |
26 | ||
27 | valueField: 'value', | |
28 | displayField: 'text', | |
29 | queryMode: 'local', | |
30 | ||
d7c12514 TL |
31 | matchFieldWidth: false, |
32 | ||
41e43880 TL |
33 | config: { |
34 | deleteEmpty: true, | |
35 | }, | |
36 | // overide framework function to implement deleteEmpty behaviour | |
37 | getSubmitData: function() { | |
38 | let me = this, data = null; | |
39 | if (!me.disabled && me.submitValue) { | |
40 | let val = me.getSubmitValue(); | |
41 | if (val !== null && val !== '' && val !== '__default__') { | |
42 | data = {}; | |
43 | data[me.getName()] = val; | |
44 | } else if (me.getDeleteEmpty()) { | |
45 | data = {}; | |
46 | data.delete = me.getName(); | |
47 | } | |
48 | } | |
49 | return data; | |
50 | }, | |
51 | ||
52 | ||
53 | store: { | |
54 | type: 'calendarEventExamples', | |
55 | }, | |
56 | ||
57 | tpl: [ | |
58 | '<ul class="x-list-plain"><tpl for=".">', | |
59 | '<li role="option" class="x-boundlist-item">{text}</li>', | |
60 | '</tpl></ul>', | |
61 | ], | |
62 | ||
63 | displayTpl: [ | |
64 | '<tpl for=".">', | |
65 | '{value}', | |
66 | '</tpl>', | |
67 | ], | |
68 | }); |