private async void AtualizarInfos_bt_Click(object sender, RoutedEventArgs e) { List <string> CamposDados = new List <string> { NomeDoPlugin_txt.Text, AutorDoPlugin_txt.Text, VersaoDoPlugin_txt.Text, TipoDoPlugin_gb.Text, PrecoDoPlugin_txt.Text, DescricaoDoPlugin_txt.Text, //bool: img padrao(0) ou personalizada(1) UsarImg_cb.IsChecked.Value ? "1" : "0" }; //verificando se é free ou pago, caso seja free, adicionando 0, pra nao ir como null pro banco if (CamposDados[3] == "Gratuito") { CamposDados[4] = "0"; } //fazendo as demais verificaçoes de campos vazios foreach (string i in CamposDados) { if (string.IsNullOrEmpty(i)) { MetodosConstantes.EnviarMenssagem("Voce precisa preencher todos os campos!"); return; } } //pegando conexao ftp do sqlite List <string> con = await new PegarConexaoMySQL_FTP().PegarAsync(PegarInfos.NomeArquivoSQLite, PegarInfos.ConfigFTP, "ftp"); //criando progressBar que mostrará o progresso no menu. ProgressBar progress = new ProgressBar() { Height = 40, Width = 40, IsIndeterminate = true, HorizontalAlignment = HorizontalAlignment.Right }; //setando style da progressBar progress.SetResourceReference(StyleProperty, "MaterialDesignCircularProgressBar"); //adicionando progressBar no menu _ = TelaInicial.MenuPrincipal.Items.Add(progress); //... progress.ToolTip = "Enviando dados..."; PluginInfo pl = new PluginInfo(); //verificando se a opçao de imagem está marcada. if (UsarImg_cb.IsChecked.Value) { if (ImagemPlugin_img.Source == null || (string.IsNullOrEmpty(_caminhoImagem) && EscolherNovaImagem_cb.IsChecked.Value)) { MetodosConstantes.EnviarMenssagem("Voce precisa selecionar uma imagem."); TelaInicial.MenuPrincipal.Items.Remove(progress); return; } if (EscolherNovaImagem_cb.IsChecked.Value) { progress.ToolTip = "Enviando imagem..."; if (await new EnviarArquivoFTP().EnviarAsync("images", _caminhoImagem, $"{CodigoPlugin_txt.Text}.png", con, progress)) { MetodosConstantes.EnviarMenssagem($"Novo imagem foi setada para {CodigoPlugin_txt.Text}"); } } } else { _ = await pl.InformacoesAsync(CodigoPlugin_txt.Text, false); if (Convert.ToBoolean(pl.DataTable.Rows[0][7]).Equals(true)) { progress.ToolTip = "Exclundo imagem..."; if (await new DeletarArquivoFTP().DeletarAsync("images", $"{CodigoPlugin_txt.Text}.png", con)) { MetodosConstantes.EnviarMenssagem("Imagem do plugin foi removida com sucesso!"); ImagemPlugin_img.Source = null; } } } if (await pl.AtualizarAsync(CodigoPlugin_txt.Text, CamposDados)) { MetodosConstantes.EnviarMenssagem("Informaçoes do banco foram atualizadas com sucesso!"); } if (!string.IsNullOrEmpty(CaminhoArquivo_txt.Text)) { progress.ToolTip = "Enviando plugin..."; if (await new EnviarArquivoFTP().EnviarAsync("plugin", CaminhoArquivo_txt.Text, $"{CodigoPlugin_txt.Text}.jar", con, progress)) { MetodosConstantes.EnviarMenssagem("Arquivo .jar foi atualizado"); } } TelaInicial.MenuPrincipal.Items.Remove(progress); }