21 public Negocio.Mantes.ConfComOffline _Negocio {
get;
set; } = null;
31 public bool ComprobacionEjecutada
35 if(_lComprobacionEjecutada)
38 if (_configuracionComprobada != null)
39 _lComprobacionEjecutada = ObtenerConfiguracion().Equals(_configuracionComprobada);
41 _lComprobacionEjecutada =
false;
43 return _lComprobacionEjecutada;
45 private set { _lComprobacionEjecutada = value; }
47 bool _lComprobacionEjecutada =
false;
48 private FtpUserData _configuracionComprobada = null;
65 private bool _lReadOnly =
false;
67 #endregion Propiedades 76 InitializeComponent();
78 if (!EW_GLOBAL._EsEjecutable)
83 Location =
new System.Drawing.Point(125, 140)
85 Controls.Add(_OneDriveConfig);
87 ewradiobutton1.CheckedChanged +=
new EventHandler(ewradiobutton1_CheckedChanged);
88 ewradiobutton2.CheckedChanged +=
new EventHandler(ewradiobutton2_CheckedChanged);
91 #endregion Constructores 93 private void SetReadOnlyTo(
bool valor)
95 if (!EW_GLOBAL._EsEjecutable)
98 txtServidor.ReadOnly = valor;
99 nudPuerto.ReadOnly = valor;
100 txtProxi.ReadOnly = valor;
101 txtUsuario.ReadOnly = valor;
102 txtPassword.ReadOnly = valor;
103 txtCarpeta.ReadOnly = valor;
104 btProbarConfiguracion.Enabled = !valor;
105 chkActivo.Enabled = !valor;
106 chkUseSSL.Enabled = !valor;
107 chkValidateFTPSCert.Enabled = !valor && chkUseSSL.Checked;
109 _OneDriveConfig._ReadOnly = valor;
111 ewradiobutton1.Enabled = !_lReadOnly;
112 ewradiobutton2.Enabled = !_lReadOnly;
116 ewradiobutton2_CheckedChanged(ewradiobutton2, null);
121 private void BtProbarConfiguracion_Click(
object sender, EventArgs e)
123 ProbarConfiguracion();
133 if (!ValidarParametros(out
string mensaje))
135 ShowMessage(mensaje);
139 var configuracionFtp = ObtenerConfiguracion();
142 bzr.ftp_user_data = configuracionFtp;
145 if (OfflineUploader.Comprobar_Conexion(bzr,
false))
147 _configuracionComprobada = configuracionFtp;
148 _lComprobacionEjecutada =
true;
151 ShowMessage(
"Prueba de sincronización FTP completada con éxito");
157 ShowMessage(
"Prueba de sincronización FTP no completada" + Environment.NewLine + Environment.NewLine + bzr.ftp_user_data.error_message);
158 bzr.ftp_user_data.error_message =
"";
164 private bool ValidarParametros(out
string mensaje)
166 var parametrosOk =
true;
167 mensaje =
string.Empty;
169 if(
string.IsNullOrWhiteSpace(_Negocio.Servidor))
171 parametrosOk =
false;
172 mensaje +=
"El servidor no puede estar en blanco" + Environment.NewLine;
175 if (
string.IsNullOrWhiteSpace(_Negocio.Usuario))
177 parametrosOk =
false;
178 mensaje +=
"El usuario no puede estar en blanco" + Environment.NewLine;
181 if (
string.IsNullOrWhiteSpace(_Negocio.Password))
183 parametrosOk =
false;
184 mensaje +=
"El password no puede estar en blanco" + Environment.NewLine;
192 internal FtpUserData ObtenerConfiguracion()
194 var config =
new FtpUserData
196 server = txtServidor.Text.TrimEnd(),
197 user = txtUsuario.Text.TrimEnd(),
198 password = txtPassword.Text.TrimEnd(),
199 port = nudPuerto.Value,
200 proxy = txtProxi.Text.TrimEnd(),
201 rutaserv = txtCarpeta.Text.TrimEnd(),
202 ftp_activo = chkActivo.Checked,
203 use_ssl_tls = chkUseSSL.Checked,
204 validate_server_cert = chkValidateFTPSCert.Checked,
225 MessageBox.Show(message,
"Configuración conexión FTP", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
232 _Negocio.GetCadenaEncriptada(_Negocio._ConfiguracionFtp);
234 if (ewradiobuttonGroup1.DataBindings[
"_SelectedItemIndexEx"] != null)
235 ewradiobuttonGroup1.DataBindings[0].ReadValue();
237 ewradiobuttonGroup1.DataBindings.Add(
"_SelectedItemIndexEx", _Negocio,
"_Conexion",
true);
239 if (txtServidor.DataBindings[
"Text"] != null)
240 txtServidor.DataBindings[0].ReadValue();
242 txtServidor.DataBindings.Add(
"Text", _Negocio,
"Servidor",
true);
244 if (nudPuerto.DataBindings[
"Value"] != null)
245 nudPuerto.DataBindings[0].ReadValue();
247 nudPuerto.DataBindings.Add(
"Value", _Negocio,
"Puerto",
true);
249 if (txtProxi.DataBindings[
"Text"] != null)
250 txtProxi.DataBindings[0].ReadValue();
252 txtProxi.DataBindings.Add(
"Text", _Negocio,
"Proxy",
true);
254 if (chkUseSSL.DataBindings[
"Checked"] != null)
255 chkUseSSL.DataBindings[0].ReadValue();
257 chkUseSSL.DataBindings.Add(
"Checked", _Negocio,
"Use_SSL_TLS",
true);
259 if (chkValidateFTPSCert.DataBindings[
"Checked"] != null)
260 chkValidateFTPSCert.DataBindings[0].ReadValue();
262 chkValidateFTPSCert.DataBindings.Add(
"Checked", _Negocio,
"Validate_Server_Cert",
true);
264 if (chkActivo.DataBindings[
"Checked"] != null)
265 chkActivo.DataBindings[0].ReadValue();
267 chkActivo.DataBindings.Add(
"Checked", _Negocio,
"FTP_Activo",
true);
269 if (txtUsuario.DataBindings[
"Text"] != null)
270 txtUsuario.DataBindings[0].ReadValue();
272 txtUsuario.DataBindings.Add(
"Text", _Negocio,
"Usuario",
true);
274 if (txtPassword.DataBindings[
"Text"] != null)
275 txtPassword.DataBindings[0].ReadValue();
277 txtPassword.DataBindings.Add(
"Text", _Negocio,
"Password",
true);
279 if (txtCarpeta.DataBindings[
"Text"] != null)
280 txtCarpeta.DataBindings[0].ReadValue();
282 txtCarpeta.DataBindings.Add(
"Text", _Negocio,
"CarpetaSrv",
true);
284 _OneDriveConfig._Negocio = _Negocio;
285 _OneDriveConfig._Binding();
288 private void ewradiobutton2_CheckedChanged(
object sender, EventArgs e)
290 ew.objetos.ewradiobutton radio = (ew.objetos.ewradiobutton)sender;
295 txtServidor.ReadOnly =
true;
296 nudPuerto.ReadOnly =
true;
297 txtProxi.ReadOnly =
true;
298 txtUsuario.ReadOnly =
true;
299 txtPassword.ReadOnly =
true;
300 txtCarpeta.ReadOnly =
true;
301 btProbarConfiguracion.Enabled =
false;
302 chkActivo.Enabled =
false;
303 chkUseSSL.Enabled =
false;
304 chkValidateFTPSCert.Enabled =
false;
306 _OneDriveConfig.Enabled =
true;
307 _OneDriveConfig._BloquearControles(
false);
312 _OneDriveConfig.Enabled =
false;
316 private void ewradiobutton1_CheckedChanged(
object sender, EventArgs e)
318 ew.objetos.ewradiobutton radio = (ew.objetos.ewradiobutton)sender;
323 txtServidor.ReadOnly =
false;
324 nudPuerto.ReadOnly =
false;
325 txtProxi.ReadOnly =
false;
326 txtUsuario.ReadOnly =
false;
327 txtPassword.ReadOnly =
false;
328 txtCarpeta.ReadOnly =
false;
329 btProbarConfiguracion.Enabled =
true;
330 chkActivo.Enabled =
true;
331 chkUseSSL.Enabled =
true;
332 chkValidateFTPSCert.Enabled = chkUseSSL.Checked;
334 _OneDriveConfig.Enabled =
false;
339 private void txtCarpeta_Validating(
object sender,
System.ComponentModel.CancelEventArgs e)
341 string lcValor = txtCarpeta.Text.Trim();
343 if (!
string.IsNullOrWhiteSpace(lcValor) && lcValor !=
"/")
345 if (!lcValor.StartsWith(
"/"))
347 lcValor =
"/" + lcValor;
350 if (!lcValor.EndsWith(
"/"))
352 lcValor = lcValor +
"/";
356 txtCarpeta.Text = lcValor;
359 private void chkUseSSL_CheckedChanged(
object sender, EventArgs e)
361 if (chkUseSSL.Checked && chkUseSSL.Enabled)
362 chkValidateFTPSCert.Enabled =
true;
364 chkValidateFTPSCert.Enabled =
false;
376 public int _SelectedItemIndexEx
380 return _SelectedItemIndex - 1;
384 _SelectedItemIndex = value+1;
void ShowMessage(string message)
Mostrar un mensaje de aviso
UserControl para configurar una cuenta FTP
bool ProbarConfiguracion(bool final=false)
Comprobar configuración
object Retrieve(Type T)
Resuelve objeto de tipo T
UserControl para configurar una cuenta FTP
FtpConfigUC()
Constructor sin parámetros
void _Binding()
Bindear los objetos contenidos en la página (interficie ITabMante)
static DependencyInjector Instance
Instancia
Clase Inyector de dependencias para resolver las dependencias