Spaces:
Sleeping
Sleeping
| Ext.onReady(function(){ | |
| var emailUrlValidationText = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@([a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4}))|((([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))$/i; | |
| Ext.apply(Ext.form.VTypes, { | |
| emailUrlValidation: function(val, field) { | |
| return emailUrlValidationText.test(val); | |
| } | |
| }); | |
| var box = new Ext.form.Checkbox({ | |
| boxLabel: _('ID_ENABLE_EMAIL_NOTIFICATION'),//'Enable Email Notifications', | |
| name: 'EnableEmailNotifications', | |
| id: 'EnableEmailNotifications', | |
| checked:false, | |
| disabled : true, | |
| listeners: { | |
| check: function(EnableEmailNotifications, checked) { | |
| if(checked) { | |
| combo.setVisible(true); | |
| Ext.getCmp('Test').setDisabled(false); | |
| Ext.getCmp('SaveChanges').disable(); | |
| combo.getEl().up('.x-form-item').setDisplayed(true); // show label | |
| if (Ext.getCmp('EmailEngine').getValue()== 'MAIL') { | |
| Ext.getCmp('Server').setVisible(false); | |
| Ext.getCmp('Server').getEl().up('.x-form-item').setDisplayed(false); // hide label | |
| Ext.getCmp('Port').setVisible(false); | |
| Ext.getCmp('Port').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('RequireAuthentication').setVisible(false); | |
| Ext.getCmp('RequireAuthentication').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('AccountFrom').setVisible(false); | |
| Ext.getCmp('AccountFrom').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('Password').setVisible(false); | |
| Ext.getCmp('Password').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('UseSecureConnection').setVisible(false); | |
| Ext.getCmp('UseSecureConnection').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp("fromMail").setVisible(true); | |
| Ext.getCmp("fromMail").getEl().up('.x-form-item').setDisplayed(true); | |
| } else { | |
| Ext.getCmp('Server').setVisible(true); | |
| Ext.getCmp('Server').getEl().up('.x-form-item').setDisplayed(true); // hide label | |
| Ext.getCmp('Port').setVisible(true); | |
| Ext.getCmp('Port').getEl().up('.x-form-item').setDisplayed(true); | |
| Ext.getCmp('RequireAuthentication').setVisible(true); | |
| Ext.getCmp('RequireAuthentication').getEl().up('.x-form-item').setDisplayed(true); | |
| Ext.getCmp('AccountFrom').setVisible(true); | |
| Ext.getCmp('AccountFrom').getEl().up('.x-form-item').setDisplayed(true); | |
| Ext.getCmp("fromMail").setVisible(true); | |
| Ext.getCmp("fromMail").getEl().up('.x-form-item').setDisplayed(true); | |
| if (Ext.getCmp('RequireAuthentication').getValue() === true) | |
| { | |
| Ext.getCmp('Password').setVisible(true); | |
| Ext.getCmp('Password').getEl().up('.x-form-item').setDisplayed(true); | |
| // Ext.getCmp('AccountFrom').allowBlank = false; | |
| } else { | |
| Ext.getCmp('Password').setVisible(false); | |
| Ext.getCmp('Password').getEl().up('.x-form-item').setDisplayed(false); | |
| // Ext.getCmp('AccountFrom').allowBlank = true; | |
| } | |
| if(!Ext.getCmp('UseSecureConnection').getValue()) { | |
| Ext.getCmp('UseSecureConnection').setValue('No'); | |
| } | |
| Ext.getCmp('UseSecureConnection').setVisible(true); | |
| Ext.getCmp('UseSecureConnection').getEl().up('.x-form-item').setDisplayed(true); | |
| } | |
| Ext.getCmp('SendaTestMail').setVisible(true); | |
| Ext.getCmp('SendaTestMail').getEl().up('.x-form-item').setDisplayed(true); | |
| Ext.getCmp('eFromName').setVisible(true); | |
| Ext.getCmp('eFromName').getEl().up('.x-form-item').setDisplayed(true); | |
| if(Ext.getCmp('SendaTestMail').checked) { | |
| Ext.getCmp('eMailto').setVisible(true); | |
| Ext.getCmp('eMailto').getEl().up('.x-form-item').setDisplayed(true); | |
| } | |
| else { | |
| Ext.getCmp('eMailto').setVisible(false); | |
| Ext.getCmp('eMailto').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('eMailto').setValue(''); | |
| } | |
| } | |
| else { | |
| combo.setVisible(false); | |
| combo.getEl().up('.x-form-item').setDisplayed(false); // hide label | |
| Ext.getCmp('Server').setVisible(false); | |
| Ext.getCmp('Server').getEl().up('.x-form-item').setDisplayed(false); // hide label | |
| Ext.getCmp('Port').setVisible(false); | |
| Ext.getCmp('Port').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('RequireAuthentication').setVisible(false); | |
| Ext.getCmp('RequireAuthentication').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('AccountFrom').setVisible(false); | |
| Ext.getCmp('AccountFrom').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('Password').setVisible(false); | |
| Ext.getCmp('Password').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('SendaTestMail').setVisible(false); | |
| Ext.getCmp('SendaTestMail').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('eFromName').setVisible(false); | |
| Ext.getCmp('eFromName').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp("fromMail").setVisible(false); | |
| Ext.getCmp("fromMail").getEl().up('.x-form-item').setDisplayed(false); | |
| if (Ext.getCmp('SendaTestMail').getValue().checked) { | |
| Ext.getCmp('eMailto').setVisible(true); | |
| Ext.getCmp('eMailto').setVisible(true); | |
| Ext.getCmp('eMailto').setValue(''); | |
| } | |
| else { | |
| Ext.getCmp('eMailto').setVisible(false); | |
| Ext.getCmp('eMailto').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('eMailto').setValue(''); | |
| } | |
| Ext.getCmp('UseSecureConnection').setVisible(false); | |
| Ext.getCmp('UseSecureConnection').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('SaveChanges').enable(); | |
| Ext.getCmp('Test').setDisabled(true); | |
| } | |
| } | |
| } | |
| }); | |
| var EmailEngine = new Ext.data.SimpleStore({ | |
| fields: ['id', 'EmailEngine'], | |
| data : [ | |
| ['PHPMAILER','SMTP (PHPMailer)'], | |
| ['MAIL','Mail (PHP)'] | |
| ] | |
| }); | |
| var combo = new Ext.form.ComboBox({ | |
| id:'EmailEngine', | |
| name:'EmailEngine', | |
| xtype: 'combo', | |
| fieldLabel: _('EMAIL_ENGINE'),//'Email Engine', | |
| blankText: '', | |
| valueField: 'id', | |
| lazyRender: true, | |
| allowBlank: false, | |
| selectOnFocus: true, | |
| forceSelection: true, | |
| store:EmailEngine, | |
| displayField:'EmailEngine', | |
| mode: 'local', | |
| triggerAction: 'all', | |
| value: 'PHPMAILER', | |
| disabled : true, | |
| listeners: { | |
| select: function(combo, value) { | |
| if (Ext.getCmp('EmailEngine').getValue()== 'MAIL') { | |
| Ext.getCmp('Server').setVisible(false); | |
| Ext.getCmp('Server').getEl().up('.x-form-item').setDisplayed(false); // hide label | |
| Ext.getCmp('Port').setVisible(false); | |
| Ext.getCmp('Port').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('RequireAuthentication').setVisible(false); | |
| Ext.getCmp('RequireAuthentication').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('AccountFrom').setVisible(false); | |
| Ext.getCmp('AccountFrom').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('Password').setVisible(false); | |
| Ext.getCmp('Password').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('UseSecureConnection').setVisible(false); | |
| Ext.getCmp('UseSecureConnection').getEl().up('.x-form-item').setDisplayed(false); | |
| //Ext.getCmp("fromMail").setVisible(true); | |
| //Ext.getCmp("fromMail").getEl().up('.x-form-item').setDisplayed(true); | |
| } else { | |
| Ext.getCmp('Server').setVisible(true); | |
| Ext.getCmp('Server').getEl().up('.x-form-item').setDisplayed(true); // hide label | |
| Ext.getCmp('Port').setVisible(true); | |
| Ext.getCmp('Port').getEl().up('.x-form-item').setDisplayed(true); | |
| Ext.getCmp('RequireAuthentication').setVisible(true); | |
| Ext.getCmp('RequireAuthentication').getEl().up('.x-form-item').setDisplayed(true); | |
| Ext.getCmp('AccountFrom').setVisible(true); | |
| Ext.getCmp('AccountFrom').getEl().up('.x-form-item').setDisplayed(true); | |
| //Ext.getCmp("fromMail").setVisible(true); | |
| //Ext.getCmp("fromMail").getEl().up('.x-form-item').setDisplayed(true); | |
| if (Ext.getCmp('RequireAuthentication').getValue() === true) | |
| { | |
| Ext.getCmp('Password').setVisible(true); | |
| Ext.getCmp('Password').getEl().up('.x-form-item').setDisplayed(true); | |
| // Ext.getCmp('AccountFrom').allowBlank = false; | |
| } else { | |
| Ext.getCmp('Password').setVisible(false); | |
| Ext.getCmp('Password').getEl().up('.x-form-item').setDisplayed(false); | |
| // Ext.getCmp('AccountFrom').allowBlank = true; | |
| } | |
| if(!Ext.getCmp('UseSecureConnection').getValue()) { | |
| Ext.getCmp('UseSecureConnection').setValue('No'); | |
| } | |
| Ext.getCmp('UseSecureConnection').setVisible(true); | |
| Ext.getCmp('UseSecureConnection').getEl().up('.x-form-item').setDisplayed(true); | |
| } | |
| Ext.getCmp('SaveChanges').disable(); | |
| } | |
| } | |
| }); | |
| var tb = new Ext.Toolbar({ | |
| style : 'background: #EEEEEE;', | |
| items: [{ | |
| xtype:'button', | |
| id:'UnEdit', | |
| iconCls: 'button_menu_ext', | |
| icon: '/images/unlocked.png', | |
| handler: UnEditMethod | |
| }, | |
| { | |
| xtype:'button', | |
| id:'Edit', | |
| iconCls: 'button_menu_ext', | |
| icon: '/images/locked.png', | |
| handler: EditMethod | |
| },' ', | |
| { | |
| xtype:'label', | |
| text:_('ID_CLICK_LOCK'), | |
| id:'label' | |
| }, | |
| { | |
| xtype:'label', | |
| text:_('ID_CLICK_UNLOCK'), | |
| id:'labelUn' | |
| }, | |
| '->', | |
| { | |
| text : _('ID_TEST'), | |
| width: 55, | |
| id:'Test', | |
| handler: testMethod | |
| },' ', | |
| { | |
| text : _('ID_SAVE_CHANGES'), | |
| id:'SaveChanges', | |
| width: 85, | |
| disabled : true, | |
| handler: saveMethod | |
| } | |
| ] | |
| }); | |
| var EMailFields = new Ext.form.FieldSet({ | |
| title: _('ID_CONFIGURATION'), | |
| items : [ | |
| box, | |
| combo, | |
| { | |
| xtype: 'textfield', | |
| hideLabel : false, | |
| fieldLabel: _('ID_SERVER'),//'Server', | |
| id:'Server', | |
| //blankText: 'Server', | |
| width: 200, | |
| allowBlank: false, | |
| disabled : true, | |
| listeners : { | |
| 'change': { | |
| fn:function() { | |
| Ext.getCmp('PasswordHide').setValue(''); | |
| Ext.getCmp('Password').setValue(''); | |
| } | |
| } | |
| } | |
| }, | |
| { | |
| xtype: 'numberfield', | |
| fieldLabel: _('PORT_DEFAULT'),//'Port (default 25)', | |
| id:'Port', | |
| name:'Port', | |
| emptyText : null, | |
| width: 40, | |
| maxLength: 3, | |
| disabled : true, | |
| allowBlank: false | |
| }, | |
| { | |
| xtype: 'checkbox', | |
| boxLabel: _('REQUIRE_AUTHENTICATION'),//'Require authentication', | |
| id:'RequireAuthentication', | |
| name:'RequireAuthentication', | |
| validateMessage: _('ID_REALLY_SHOULD'), | |
| validateField: true, | |
| disabled : true, | |
| handler: function() { | |
| if (this.checked) { | |
| Ext.getCmp('Password').setVisible(true); | |
| Ext.getCmp('Password').getEl().up('.x-form-item').setDisplayed(true); | |
| } else { | |
| Ext.getCmp('Password').setVisible(false); | |
| Ext.getCmp('Password').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('Password').setValue(''); | |
| } | |
| } | |
| }, | |
| { | |
| xtype: 'textfield', | |
| fieldLabel: _("ID_USER_NAME"), //'Account From', | |
| id:'AccountFrom', | |
| name:'AccountFrom', | |
| vtype:'emailUrlValidation', | |
| width: 200, | |
| disabled: true, | |
| allowBlank: false, | |
| enableKeyEvents: true, | |
| listeners: { | |
| keydown: function (txt, e) { | |
| switch (e.getKey()) { | |
| case 8: //Delete | |
| case 46: //Supr | |
| if (Ext.getCmp("AccountFrom").getValue() == "") { | |
| Ext.getCmp("Password").setValue(""); | |
| } | |
| break; | |
| } | |
| }, | |
| keyup: function (txt, e) { | |
| var strValue = Ext.getCmp("AccountFrom").getValue(); | |
| var sw = 0; | |
| switch (e.getKey()) { | |
| case 8: //Delete | |
| case 46: //Supr | |
| if (strValue == "") { | |
| sw = 1; | |
| } | |
| break; | |
| default: | |
| if (strValue.length <= 1) { | |
| sw = 1; | |
| } | |
| break; | |
| } | |
| if (sw == 1) { | |
| Ext.getCmp("Password").setValue(""); | |
| } | |
| } | |
| } | |
| }, | |
| { | |
| xtype: 'textfield', | |
| fieldLabel: _('ID_PASSWORD'),//'PasswordHidden', | |
| id:'PasswordHide', | |
| name:'PasswordHide', | |
| inputType: 'PasswordHide', | |
| width: 200, | |
| hidden: true, | |
| hideLabel: true, | |
| disabled : true, | |
| allowBlank: true | |
| }, | |
| { | |
| xtype: 'textfield', | |
| fieldLabel: _('ID_PASSWORD'),//'Password', | |
| id:'Password', | |
| name:'Password', | |
| inputType: 'password', | |
| width: 200, | |
| allowBlank: true, | |
| disabled : true, | |
| listeners : { | |
| 'change' : function() { | |
| if (Ext.getCmp('Password').getValue() != '') { | |
| Ext.getCmp('PasswordHide').setValue(''); | |
| } | |
| } | |
| } | |
| }, | |
| { | |
| xtype: "textfield", | |
| id: "fromMail", | |
| name: "fromMail", | |
| fieldLabel: _('ID_FROM_EMAIL'), //"From Mail", | |
| width: 250, | |
| disabled: true, | |
| vtype:'email' | |
| }, | |
| { | |
| xtype: 'textfield', | |
| fieldLabel: _('ID_FROM_NAME'), | |
| id:'eFromName', | |
| name:'eFromName', | |
| width: 250, | |
| disabled : true | |
| }, | |
| { | |
| id:'UseSecureConnection', | |
| name:'UseSecureConnection', | |
| xtype: 'radiogroup', | |
| fieldLabel: _('USE_SECURE_CONNECTION'),//'Use Secure Connection', | |
| columns: 3, | |
| width: 200, | |
| disabled : true, | |
| vertical: true, | |
| items: [ | |
| {boxLabel: 'No',inputValue: 'No',name: 'UseSecureConnection',checked:true}, | |
| {boxLabel: 'TLS', inputValue: 'tls',name: 'UseSecureConnection'}, | |
| {boxLabel: 'SSL', inputValue: 'ssl',name: 'UseSecureConnection'} | |
| ] | |
| }, | |
| { | |
| xtype: 'checkbox', | |
| boxLabel: _('SEND_TEST_MAIL'),//'Send a test mail' , | |
| id:'SendaTestMail', | |
| name:'SendaTestMail', | |
| disabled : true, | |
| listeners: { | |
| check: function(EnableEmailNotifications, checked) { | |
| if(checked) { | |
| Ext.getCmp('eMailto').setVisible(true); | |
| Ext.getCmp('eMailto').getEl().up('.x-form-item').setDisplayed(true); | |
| Ext.getCmp('eMailto').setValue(''); | |
| } | |
| else{ | |
| Ext.getCmp('eMailto').setVisible(false); | |
| Ext.getCmp('eMailto').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('eMailto').setValue(' '); | |
| } | |
| } | |
| } | |
| }, | |
| { | |
| xtype: 'textfield', | |
| fieldLabel: _('MAIL_TO'),//'Mail to', | |
| id:'eMailto', | |
| name:'eMailto', | |
| width: 200, | |
| disabled : true, | |
| allowBlank: false | |
| }, | |
| tb | |
| ] | |
| }); | |
| loadfields = function(){ | |
| Ext.Ajax.request({ | |
| url: '../adminProxy/loadFields', | |
| params: { CFG_UID: 'Emails' }, | |
| success: function(r,o) { | |
| var res = Ext.decode(r.responseText); | |
| if (! res.data) | |
| return; | |
| if (res.success) { | |
| if (res.data.MESS_ENABLED == 1) { | |
| Ext.getCmp('EnableEmailNotifications').setValue(res.data.MESS_ENABLED); | |
| Ext.getCmp('EmailEngine').setValue(res.data.MESS_ENGINE); | |
| if (Ext.getCmp('EmailEngine').getValue()== 'MAIL') { | |
| Ext.getCmp('Server').setVisible(false); | |
| Ext.getCmp('Server').getEl().up('.x-form-item').setDisplayed(false); // hide label | |
| Ext.getCmp('Port').setVisible(false); | |
| Ext.getCmp('Port').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('RequireAuthentication').setVisible(false); | |
| Ext.getCmp('RequireAuthentication').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('AccountFrom').setVisible(false); | |
| Ext.getCmp('AccountFrom').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('Password').setVisible(false); | |
| Ext.getCmp('Password').getEl().up('.x-form-item').setDisplayed(false); | |
| //Ext.getCmp('eFromName').setVisible(false); | |
| //Ext.getCmp('eFromName').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('UseSecureConnection').setVisible(false); | |
| Ext.getCmp('UseSecureConnection').getEl().up('.x-form-item').setDisplayed(false); | |
| //Ext.getCmp("fromMail").setVisible(false); | |
| //Ext.getCmp("fromMail").getEl().up('.x-form-item').setDisplayed(false); | |
| if (typeof (res.data.MESS_FROM_MAIL) != "undefined"){ | |
| Ext.getCmp("fromMail").setValue(res.data.MESS_FROM_MAIL); | |
| } else { | |
| Ext.getCmp("fromMail").setValue(""); | |
| } | |
| } else { | |
| Ext.getCmp('Server').setVisible(true); | |
| Ext.getCmp('Server').getEl().up('.x-form-item').setDisplayed(true); // hide label | |
| Ext.getCmp('Port').setVisible(true); | |
| Ext.getCmp('Port').getEl().up('.x-form-item').setDisplayed(true); | |
| Ext.getCmp('RequireAuthentication').setVisible(true); | |
| Ext.getCmp('RequireAuthentication').getEl().up('.x-form-item').setDisplayed(true); | |
| Ext.getCmp('AccountFrom').setVisible(true); | |
| Ext.getCmp('AccountFrom').getEl().up('.x-form-item').setDisplayed(true); | |
| //Ext.getCmp("fromMail").setVisible(true); | |
| //Ext.getCmp("fromMail").getEl().up('.x-form-item').setDisplayed(true); | |
| if (Ext.getCmp('RequireAuthentication').getValue() === true) | |
| { | |
| Ext.getCmp('Password').setVisible(true); | |
| Ext.getCmp('Password').getEl().up('.x-form-item').setDisplayed(true); | |
| // Ext.getCmp('AccountFrom').allowBlank = false; | |
| } else { | |
| Ext.getCmp('Password').setVisible(false); | |
| Ext.getCmp('Password').getEl().up('.x-form-item').setDisplayed(false); | |
| // Ext.getCmp('AccountFrom').allowBlank = true; | |
| } | |
| //Ext.getCmp('eFromName').setVisible(true); | |
| //Ext.getCmp('eFromName').getEl().up('.x-form-item').setDisplayed(true); | |
| if(!Ext.getCmp('UseSecureConnection').getValue()) { | |
| Ext.getCmp('UseSecureConnection').setValue('No'); | |
| } | |
| Ext.getCmp('UseSecureConnection').setVisible(true); | |
| Ext.getCmp('UseSecureConnection').getEl().up('.x-form-item').setDisplayed(true); | |
| Ext.getCmp('Server').setValue(res.data.MESS_SERVER); | |
| Ext.getCmp('Port').setValue(res.data.MESS_PORT); | |
| Ext.getCmp('RequireAuthentication').setValue(res.data.MESS_RAUTH); | |
| Ext.getCmp('AccountFrom').setValue(res.data.MESS_ACCOUNT); | |
| Ext.getCmp('Password').setValue(res.data.MESS_PASSWORD); | |
| Ext.getCmp('PasswordHide').setValue(Ext.getCmp('Password').getValue()); | |
| if (typeof (res.data.MESS_FROM_MAIL) != "undefined"){ | |
| Ext.getCmp("fromMail").setValue(res.data.MESS_FROM_MAIL); | |
| } else { | |
| Ext.getCmp("fromMail").setValue(""); | |
| } | |
| if (res.data.SMTPSecure == 'none') { | |
| Ext.getCmp('UseSecureConnection').setValue('No'); | |
| } | |
| else { | |
| Ext.getCmp('UseSecureConnection').setValue(res.data.SMTPSecure); | |
| } | |
| } | |
| Ext.getCmp('SendaTestMail').setValue(res.data.MESS_TRY_SEND_INMEDIATLY); | |
| if(!res.data.MAIL_TO) { | |
| Ext.getCmp('eMailto').setValue(''); | |
| } | |
| else { | |
| Ext.getCmp('eMailto').setValue(res.data.MAIL_TO); | |
| } | |
| if(!res.data.MESS_FROM_NAME) { | |
| Ext.getCmp('eFromName').setValue(''); | |
| } else { | |
| Ext.getCmp('eFromName').setValue(res.data.MESS_FROM_NAME); | |
| } | |
| } | |
| } | |
| } | |
| }); | |
| } | |
| loadfields(); | |
| var frm = new Ext.FormPanel({ | |
| title: ' ', | |
| id:'EMailFields', | |
| labelWidth: 150, | |
| width:600, | |
| labelAlign:'right', | |
| autoScroll: true, | |
| // bodyStyle:'padding:2px', | |
| waitMsgTarget : true, | |
| frame: true, | |
| defaults: { | |
| allowBlank: false, | |
| msgTarget: 'side', | |
| align:'center' | |
| }, | |
| items: [EMailFields ] | |
| }); | |
| //render to process-panel | |
| frm.render(document.body); | |
| combo.setVisible(false); | |
| combo.getEl().up('.x-form-item').setDisplayed(false); // hide label | |
| Ext.getCmp('Server').setVisible(false); | |
| Ext.getCmp('Server').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('Port').setVisible(false); | |
| Ext.getCmp('Port').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('RequireAuthentication').setVisible(false); | |
| Ext.getCmp('RequireAuthentication').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('AccountFrom').setVisible(false); | |
| Ext.getCmp('AccountFrom').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('Password').setVisible(false); | |
| Ext.getCmp('Password').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('SendaTestMail').setVisible(false); | |
| Ext.getCmp('SendaTestMail').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('eMailto').setVisible(false); | |
| Ext.getCmp('eMailto').getEl().up('.x-form-item').setDisplayed(false); | |
| //Ext.getCmp('eFromName').setVisible(false); | |
| //Ext.getCmp('eFromName').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('UseSecureConnection').setVisible(false); | |
| Ext.getCmp('UseSecureConnection').getEl().up('.x-form-item').setDisplayed(false); | |
| Ext.getCmp('Test').setVisible(false); | |
| Ext.getCmp('SaveChanges').setVisible(false); | |
| Ext.getCmp('UnEdit').setVisible(false); | |
| Ext.getCmp('labelUn').setVisible(false); | |
| //Ext.getCmp("fromMail").setVisible(false); | |
| //Ext.getCmp("fromMail").getEl().up('.x-form-item').setDisplayed(false); | |
| }); | |
| var testConnForm = new Ext.FormPanel({ | |
| collapsible: false, | |
| maximizable: true, | |
| width:445, | |
| autoHeight:true, | |
| frame:true, | |
| autoDestroy : true, | |
| monitorValid : true, | |
| plain: true, | |
| waitMsgTarget: true, | |
| items:[{ | |
| xtype : 'fieldset', | |
| layout : 'form', | |
| id:'testConnField', | |
| title: _('TESTING_EMAIL_CONF'),//'Testing email configuration', | |
| labelWidth:20, | |
| items : [ | |
| { | |
| xtype: 'label', fieldLabel: ' ', | |
| id:'step1', width: 300, | |
| labelSeparator:'' | |
| }, | |
| { | |
| xtype: 'label', fieldLabel: ' ', | |
| id:'result1', | |
| width: 300, | |
| labelSeparator:'', | |
| style : 'font-size: 11px;' | |
| }, | |
| { | |
| xtype: 'label', | |
| fieldLabel: ' ', | |
| id:'step2', | |
| width: 300, | |
| labelSeparator:'' | |
| }, | |
| { | |
| xtype: 'label', fieldLabel: ' ', | |
| id:'result2', | |
| width: 300, | |
| labelSeparator:'', | |
| style : 'font-size: 11px;' | |
| }, | |
| { | |
| xtype: 'label', | |
| fieldLabel: ' ', | |
| id:'step3', | |
| width: 300, | |
| labelSeparator:'' | |
| }, | |
| { | |
| xtype: 'label', fieldLabel: ' ', | |
| id:'result3', | |
| width: 300, | |
| labelSeparator:'', | |
| style : 'font-size: 11px;' | |
| }, | |
| { | |
| xtype: 'label', | |
| fieldLabel: ' ', | |
| id:'step4', | |
| width: 300, | |
| labelSeparator:'' | |
| }, | |
| { | |
| xtype: 'label', | |
| fieldLabel: ' ', | |
| id:'result4', | |
| width: 300, | |
| labelSeparator:'', | |
| style : 'font-size: 11px;' | |
| }, | |
| { | |
| xtype: 'label', | |
| fieldLabel: ' ', | |
| id:'step5', | |
| width: 300, | |
| labelSeparator:'' | |
| }, | |
| { | |
| xtype: 'label', | |
| fieldLabel: ' ', | |
| id:'result5', | |
| width: 300, | |
| labelSeparator:'', | |
| style : 'font-size: 11px;' | |
| } | |
| ] | |
| }], | |
| buttons: [ | |
| { | |
| text:_('ID_DONE'), | |
| id: 'done', | |
| handler: function(){ | |
| testEmailWindow.hide(); | |
| } | |
| } | |
| ] | |
| }); | |
| var testConnFormMail = new Ext.FormPanel({ | |
| collapsible: false, | |
| maximizable: true, | |
| width:445, | |
| autoHeight:true, | |
| frame:true, | |
| autoDestroy : true, | |
| monitorValid : true, | |
| plain: true, | |
| waitMsgTarget: true, | |
| items:[{ | |
| xtype : 'fieldset', | |
| layout : 'form', | |
| id:'testConnFieldMail', | |
| title: _('TESTING_EMAIL_CONF'),//'Testing email configuration', | |
| labelWidth:20, | |
| items : [ | |
| { | |
| xtype: 'label', fieldLabel: ' ', | |
| id:'step11', width: 300, | |
| labelSeparator:'' | |
| }, | |
| { | |
| xtype: 'label', fieldLabel: ' ', | |
| id:'result11', | |
| width: 300, | |
| labelSeparator:'', | |
| style : 'font-size: 11px;' | |
| }, | |
| { | |
| xtype: 'label', | |
| fieldLabel: ' ', | |
| id:'step12', | |
| width: 300, | |
| labelSeparator:'' | |
| }, | |
| { | |
| xtype: 'label', fieldLabel: ' ', | |
| id:'result12', | |
| width: 300, | |
| labelSeparator:'', | |
| style : 'font-size: 11px;' | |
| } | |
| ] | |
| }], | |
| buttons: [ | |
| { | |
| text:_('ID_DONE'), | |
| id: 'doneMail', | |
| handler: function(){ | |
| testEmailWindowMail.hide(); | |
| } | |
| } | |
| ] | |
| }); | |
| var testEmailWindow = new Ext.Window({ | |
| width: 470, | |
| closable:false, | |
| plain: true, | |
| modal: true, | |
| autoHeight: true, | |
| layout: 'fit', | |
| y: 82, | |
| items: testConnForm, | |
| draggable: false, | |
| resizable: false | |
| }); | |
| var testEmailWindowMail = new Ext.Window({ | |
| width: 470, | |
| closable:false, | |
| plain: true, | |
| modal: true, | |
| autoHeight: true, | |
| layout: 'fit', | |
| y: 82, | |
| items: testConnFormMail, | |
| draggable: false, | |
| resizable: false | |
| }); | |
| var params; | |
| var count = 0; | |
| var EditMethod = function() | |
| { | |
| Ext.getCmp('EnableEmailNotifications').setDisabled(false); | |
| Ext.getCmp('EmailEngine').setDisabled(false); | |
| Ext.getCmp('Server').setDisabled(false); | |
| Ext.getCmp('Port').setDisabled(false); | |
| Ext.getCmp('RequireAuthentication').setDisabled(false); | |
| Ext.getCmp('AccountFrom').setDisabled(false); | |
| Ext.getCmp('Password').setDisabled(false); | |
| Ext.getCmp('SendaTestMail').setDisabled(false); | |
| Ext.getCmp('eMailto').setDisabled(false); | |
| Ext.getCmp('eFromName').setDisabled(false); | |
| Ext.getCmp('UseSecureConnection').setDisabled(false); | |
| Ext.getCmp('Test').setVisible(true); | |
| Ext.getCmp('SaveChanges').setVisible(true); | |
| Ext.getCmp('UnEdit').setVisible(true); | |
| Ext.getCmp('Edit').setVisible(false); | |
| Ext.getCmp('label').setVisible(false); | |
| Ext.getCmp('labelUn').setVisible(true); | |
| Ext.getCmp("fromMail").setDisabled(false); | |
| } | |
| var UnEditMethod = function() | |
| { | |
| Ext.getCmp('EnableEmailNotifications').setDisabled(true); | |
| Ext.getCmp('EmailEngine').setDisabled(true); | |
| Ext.getCmp('Server').setDisabled(true); | |
| Ext.getCmp('Port').setDisabled(true); | |
| Ext.getCmp('RequireAuthentication').setDisabled(true); | |
| Ext.getCmp('AccountFrom').setDisabled(true); | |
| Ext.getCmp('Password').setDisabled(true); | |
| Ext.getCmp('SendaTestMail').setDisabled(true); | |
| Ext.getCmp('eMailto').setDisabled(true); | |
| Ext.getCmp('eFromName').setDisabled(true); | |
| Ext.getCmp('UseSecureConnection').setDisabled(true); | |
| Ext.getCmp('Test').setVisible(false); | |
| Ext.getCmp('SaveChanges').setVisible(false); | |
| Ext.getCmp('UnEdit').setVisible(false); | |
| Ext.getCmp('Edit').setVisible(true); | |
| Ext.getCmp('label').setVisible(true); | |
| Ext.getCmp('labelUn').setVisible(false); | |
| Ext.getCmp("fromMail").setDisabled(true); | |
| } | |
| var testMethod = function() | |
| { | |
| var typeTest = Ext.getCmp('EmailEngine').getValue(); | |
| switch (typeTest) | |
| { | |
| case 'MAIL': | |
| if ( Ext.getCmp('SendaTestMail').getValue() == true && | |
| ( Ext.getCmp('eMailto').getValue() == '' || | |
| /^[0-9a-z_\-\.]+@[0-9a-z\-\.]+\.[a-z]{2,4}$/i.test(Ext.getCmp('eMailto').getValue()) != true ) ) { | |
| Ext.MessageBox.show({ | |
| title: _('ID_ERROS'), | |
| msg: _('ID_MAIL_TO_NOT_VALID_ADDRESS'), | |
| buttons: Ext.MessageBox.OK, | |
| animEl: 'mb9', | |
| icon: Ext.MessageBox.ERROR | |
| }); | |
| return false; | |
| } | |
| params = { | |
| typeTest : 'MAIL', | |
| request : 'mailTestMail_Show', | |
| mail_to : 'admin@processmaker.com', | |
| send_test_mail : 'yes', | |
| from_mail : Ext.getCmp("fromMail").getValue(), | |
| from_name : Ext.getCmp("eFromName").getValue() | |
| }; | |
| Ext.getCmp('step11').setText('<span id="rstep11"></span> '+_('LOGIN_VERIFY_MSG')+' <b> Mail Transport Agent </b>', false); | |
| Ext.getCmp('step12').setText('<span id="rstep12"></span> '+_('SENDING_TEST_EMAIL')+' [<b>'+ Ext.getCmp('eMailto').getValue() +'</b>]...<b>', false); | |
| Ext.getCmp('step11').setVisible(false); | |
| Ext.getCmp('step12').setVisible(false); | |
| Ext.getCmp('result11').setVisible(false); | |
| Ext.getCmp('result12').setVisible(false); | |
| Ext.getCmp('doneMail').enable(); | |
| Ext.getCmp('SaveChanges').disable(); | |
| Ext.getCmp('EMailFields').disable(); | |
| testEmailWindowMail.show(); | |
| Ext.getCmp('EMailFields').enable(); | |
| execTest(11); | |
| break; | |
| case 'PHPMAILER': | |
| if((Ext.getCmp('Port').getValue()==null)||(Ext.getCmp('Port').getValue()=='')) { | |
| Ext.getCmp('Port').setValue('25'); | |
| } | |
| if (Ext.getCmp('RequireAuthentication').checked){ | |
| if (Ext.getCmp('Password').getValue()=='') { | |
| if (Ext.getCmp('PasswordHide').getValue()=='') { | |
| PMExt.warning(_('ID_WARNING'),_('ID_PASSWD_REQUIRED')); | |
| return false; | |
| } | |
| } | |
| } | |
| var x = Ext.getCmp('UseSecureConnection').getValue(); | |
| var UseSecureConnection = x.getGroupValue(); | |
| var count=0; | |
| var create=true; | |
| params = { | |
| typeTest : 'PHPMAILER', | |
| server : Ext.getCmp('Server').getValue(), | |
| user : Ext.getCmp('AccountFrom').getValue(), | |
| passwd : Ext.getCmp('Password').getValue(), | |
| passwdHide : Ext.getCmp('PasswordHide').getValue(), | |
| port : Ext.getCmp('Port').getValue(), | |
| req_auth : Ext.getCmp('RequireAuthentication').getValue(), | |
| UseSecureCon : UseSecureConnection, | |
| SendaTestMail : Ext.getCmp('SendaTestMail').getValue() , | |
| eMailto : Ext.getCmp('eMailto').getValue(), | |
| login : Ext.getCmp('AccountFrom').getValue(), | |
| fromMail : Ext.getCmp("fromMail").getValue(), | |
| fromName : Ext.getCmp("eFromName").getValue() | |
| }; | |
| Ext.getCmp('step1').setText('<span id="rstep1"></span> '+_('RESOLVING_NAME')+' <b>'+params.server+'</b>', false); | |
| Ext.getCmp('step2').setText('<span id="rstep2"></span> '+_('ID_CHECK_PORT')+' <b>'+params.port+'</b>',false); | |
| Ext.getCmp('step3').setText('<span id="rstep3"></span> '+_('ESTABLISHING_CON_HOST')+' <b>'+params.server+':'+params.port+'</b>',false); | |
| Ext.getCmp('step4').setText('<span id="rstep4"></span> '+_('LOGIN_AS')+' [<b>'+params.login+'</b>] '+_('ID_ON')+' '+params.server+' '+_('SMTP_SERVER')+' <b>',false); | |
| Ext.getCmp('step5').setText('<span id="rstep5"></span> '+_('SENDING_TEST_EMAIL')+' [<b>'+params.eMailto +'</b>]...<b>', false); | |
| Ext.getCmp('step1').setVisible(false); | |
| Ext.getCmp('step2').setVisible(false); | |
| Ext.getCmp('step3').setVisible(false); | |
| Ext.getCmp('step4').setVisible(false); | |
| Ext.getCmp('step5').setVisible(false); | |
| Ext.getCmp('result1').setVisible(false); | |
| Ext.getCmp('result2').setVisible(false); | |
| Ext.getCmp('result3').setVisible(false); | |
| Ext.getCmp('result4').setVisible(false); | |
| Ext.getCmp('result5').setVisible(false); | |
| Ext.getCmp('done').enable(); | |
| Ext.getCmp('SaveChanges').disable(); | |
| Ext.getCmp('EMailFields').disable(); | |
| testEmailWindow.show(); | |
| Ext.getCmp('EMailFields').enable(); | |
| execTest(1); | |
| break; | |
| } | |
| return true; | |
| }; | |
| function execTest(step) { | |
| if (step == 6) return false; | |
| if (step == 13) return false; | |
| if ((step == 5) && (params.SendaTestMail == false)) | |
| return false; | |
| if ((step == 12) && (Ext.getCmp('SendaTestMail').getValue() != true)) | |
| return false; | |
| document.getElementById('rstep'+step).innerHTML = '<img width="13" height="13" border="0" src="/images/ajax-loader.gif">'; | |
| Ext.getCmp('step'+step).setVisible(true); | |
| params.step = step; | |
| params.mail_to = (params.step == 12) ? Ext.getCmp('eMailto').getValue() : params.mail_to; | |
| Ext.Ajax.request({ | |
| url: '../adminProxy/testConnection', | |
| method:'POST', | |
| params: params, | |
| waitMsg: _('ID_UPLOADING_PROCESS_FILE'), | |
| success: function(r,o){ | |
| var resp = Ext.util.JSON.decode(r.responseText); | |
| if (resp.success) { | |
| img = '/images/dialog-ok-apply.png'; | |
| Ext.getCmp('SaveChanges').enable(); | |
| colorMsg = 'color:#00FF00'; | |
| } | |
| else { | |
| img = '/images/delete.png'; | |
| Ext.getCmp('SaveChanges').disable(); | |
| colorMsg = 'color:#FF0000'; | |
| } | |
| document.getElementById('rstep'+step).innerHTML = '<img width="13" height="13" border="0" src="'+img+'">'; | |
| if(resp.msg) { | |
| document.getElementById('result'+step).innerHTML = ' <span style="' + colorMsg + ';">'+resp.msg+'</span>'; | |
| Ext.getCmp('result'+step).setVisible(true); | |
| } | |
| execTest(step+1); | |
| } | |
| }); | |
| } | |
| saveMethod=function() { | |
| var x = Ext.getCmp('UseSecureConnection').getValue(); | |
| var UseSecureConnection = x.getGroupValue(); | |
| Ext.Ajax.request({ | |
| url: '../adminProxy/saveConfiguration', | |
| method:'POST', | |
| params:{ | |
| type:'type', | |
| server:Ext.getCmp('Server').getValue(), | |
| db_name:'db_name', | |
| from:Ext.getCmp('AccountFrom').getValue(), | |
| passwd:Ext.getCmp('Password').getValue(), | |
| passwdHide:Ext.getCmp('PasswordHide').getValue(), | |
| port:Ext.getCmp('Port').getValue(), | |
| req_auth:Ext.getCmp('RequireAuthentication').getValue(), | |
| UseSecureCon:UseSecureConnection, | |
| SendaTestMail : Ext.getCmp('SendaTestMail').getValue() , | |
| eMailto : Ext.getCmp('eMailto').getValue(), | |
| FromName: Ext.getCmp('eFromName').getValue(), | |
| EnableEmailNotifications : Ext.getCmp('EnableEmailNotifications').getValue(), | |
| EmailEngine : Ext.getCmp('EmailEngine').getValue(), | |
| background: 'true', | |
| fromMail:Ext.getCmp("fromMail").getValue() | |
| }, | |
| success: function(r){ | |
| var i = Ext.decode(r.responseText); | |
| PMExt.notify(_('ID_CHANGES_SAVED'),i.msg); | |
| } | |
| }); | |
| UnEditMethod(); | |
| } | |