]> git.proxmox.com Git - pmg-gui.git/blame - js/SpamDetectorLanguages.js
fix bug #1707: use correct units for deferred mail queue (minutes)
[pmg-gui.git] / js / SpamDetectorLanguages.js
CommitLineData
8dca8d1d
DM
1Ext.define('PMG.SpamDetectorLanguagesInputPanel', {
2 extend: 'Proxmox.panel.InputPanel',
3 alias: 'widget.pmgSpamDetectorLanguagesInputPanel',
4
5 languages: [
ccbf186f 6 [ 'af', 'Afrikaans' ],
8dca8d1d
DM
7 [ 'am', 'Amharic' ],
8 [ 'ar', 'Arabic' ],
9 [ 'be', 'Byelorussian' ],
10 [ 'bg', 'Bulgarian' ],
11 [ 'bs', 'Bosnian' ],
12 [ 'ca', 'Catalan' ],
13 [ 'cs', 'Czech' ],
14 [ 'cy', 'Welsh' ],
15 [ 'da', 'Danish' ],
16 [ 'de', 'German' ],
17 [ 'el', 'Greek' ],
18 [ 'en', 'English' ],
19 [ 'eo', 'Esperanto' ],
20 [ 'es', 'Spanish' ],
21 [ 'et', 'Estonian' ],
22 [ 'eu', 'Basque' ],
23 [ 'fa', 'Persian' ],
24 [ 'fi', 'Finnish' ],
25 [ 'fr', 'French' ],
26 [ 'fy', 'Frisian' ],
27 [ 'ga', 'Irish' ],
28 [ 'gd', 'Scottish' ],
29 [ 'he', 'Hebrew' ],
30 [ 'hi', 'Hindi' ],
31 [ 'hr', 'Croatian' ],
32 [ 'hu', 'Hungarian' ],
33 [ 'hy', 'Armenian' ],
34 [ 'id', 'Indonesian' ],
35 [ 'is', 'Icelandic' ],
36 [ 'it', 'Italian' ],
37 [ 'ja', 'Japanese' ],
38 [ 'ka', 'Georgian' ],
39 [ 'ko', 'Korean' ],
40 [ 'la', 'Latin' ],
41 [ 'lt', 'Lithuanian' ],
42 [ 'lv', 'Latvian' ],
43 [ 'mr', 'Marathi' ],
44 [ 'ms', 'Malay' ],
45 [ 'ne', 'Nepali' ],
46 [ 'nl', 'Dutch' ],
47 [ 'no', 'Norwegian' ],
48 [ 'pl', 'Polish' ],
49 [ 'pt', 'Portuguese' ],
50 [ 'qu', 'Quechua' ],
51 [ 'Rhaeto', 'Romance' ],
52 [ 'ro', 'Romanian' ],
53 [ 'ru', 'Russian' ],
54 [ 'sa', 'Sanskrit' ],
55 [ 'sco', 'Scots' ],
56 [ 'sk', 'Slovak' ],
57 [ 'sl', 'Slovenian' ],
58 [ 'sq', 'Albanian' ],
59 [ 'sr', 'Serbian' ],
60 [ 'sv', 'Swedish' ],
61 [ 'sw', 'Swahili' ],
62 [ 'ta', 'Tamil' ],
63 [ 'th', 'Thai' ],
64 [ 'tl', 'Tagalog' ],
65 [ 'tr', 'Turkish' ],
66 [ 'uk', 'Ukrainian' ],
67 [ 'vi', 'Vietnamese' ],
68 [ 'yi', 'Yiddish' ],
771bd0b9 69 [ 'zh', 'Chinese' ]
8dca8d1d
DM
70 ],
71
72 onGetValues: function(values) {
8dca8d1d
DM
73 if (!values.languages) {
74 values['delete'] = 'languages';
75 } else if (Ext.isArray(values.languages)) {
de0ebd99
DC
76 /*jslint confusion: true*/
77 /*languages is an array and string here*/
78 values.languages = values.languages.join(' ');
79 /*jslint confusion: false*/
8dca8d1d
DM
80 }
81
8dca8d1d
DM
82 return values;
83 },
84
85
86 initComponent : function() {
87 var me = this;
88
89 me.column1 = [];
90 me.column2 = [];
91 me.column3 = [];
92 me.column4 = [];
93
cac4542e
DC
94 var i, len;
95 for (i = 0, len = me.languages.length; i < len; i++) {
8dca8d1d
DM
96 var config = {
97 xtype: 'checkboxfield',
98 inputValue: me.languages[i][0],
99 boxLabel: me.languages[i][1],
100 name: 'languages'
101 };
102 if ((i % 4) === 0) {
103 me.column1.push(config);
104 } else if ((i % 4) === 1) {
105 me.column2.push(config);
106 } else if ((i % 4) === 2) {
107 me.column3.push(config);
108 } else if ((i % 4) === 3) {
109 me.column4.push(config);
110 }
111 }
112
113 me.callParent();
114 }
115});
116
117Ext.define('PMG.SpamDetectorLanguages', {
118 extend: 'Proxmox.window.Edit',
119
120 subject: 'Languages',
121
122 initComponent : function() {
123 var me = this;
124
125 me.items = Ext.create('PMG.SpamDetectorLanguagesInputPanel');
126
127 me.callParent();
128
129 me.load({
130 success: function(response, options) {
131 var value = response.result.data.languages || '';
132 var languages = value.split(/[\ \,\;]+/);
133 me.setValues({ languages: languages });
134 }
135 });
136 }
137});