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@luranasoft.com', send_test_mail : 'yes', from_mail : Ext.getCmp("fromMail").getValue(), from_name : Ext.getCmp("eFromName").getValue() }; Ext.getCmp('step11').setText(' '+_('LOGIN_VERIFY_MSG')+' Mail Transport Agent ', false); Ext.getCmp('step12').setText(' '+_('SENDING_TEST_EMAIL')+' ['+ Ext.getCmp('eMailto').getValue() +']...', 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(' '+_('RESOLVING_NAME')+' '+params.server+'', false); Ext.getCmp('step2').setText(' '+_('ID_CHECK_PORT')+' '+params.port+'',false); Ext.getCmp('step3').setText(' '+_('ESTABLISHING_CON_HOST')+' '+params.server+':'+params.port+'',false); Ext.getCmp('step4').setText(' '+_('LOGIN_AS')+' ['+params.login+'] '+_('ID_ON')+' '+params.server+' '+_('SMTP_SERVER')+' ',false); Ext.getCmp('step5').setText(' '+_('SENDING_TEST_EMAIL')+' ['+params.eMailto +']...', 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 = ''; 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 = ''; if(resp.msg) { document.getElementById('result'+step).innerHTML = '      '+resp.msg+''; 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(); }