protected void btnSalvar_Click(object sender, EventArgs e) { try { Usuario user = (Usuario)Session["Usuario"]; Kart_Grupo kg = null; ValidarCampos(); txtUrlAcesso.Text = FixString(txtUrlAcesso.Text.Trim()).ToLower(); txtSigla.Text = txtSigla.Text.Trim(); txtNomeGrupo.Text = txtNomeGrupo.Text.Trim(); string urlAcesso = txtUrlAcesso.Text; string sigla = txtSigla.Text; string nomeGrupo = txtNomeGrupo.Text; if (string.IsNullOrEmpty(urlAcesso) || string.IsNullOrEmpty(sigla) || string.IsNullOrEmpty(nomeGrupo)) { throw new Exception("Favor verificar a sigla, o nome e a url do grupo!"); } DataKartDataContext dk = new DataKartDataContext(); if (IdGrupo <= 0) { int count = (from g in dk.Kart_Grupos where g.Sigla.Equals(sigla) || g.NomeGrupo.Equals(nomeGrupo) || g.UrlAcesso.Equals(urlAcesso) select g).Count(); if (count > 0) { throw new Exception("Já existe um grupo cadastro com essas informações!"); } kg = new Kart_Grupo(); kg.Id_Usuario_Lider = user.idUsuario; kg.NomeGrupo = nomeGrupo; kg.permitirInsricoes = Convert.ToBoolean(ddlPermitirInscricoes.SelectedValue); kg.Sigla = sigla; kg.UrlAcesso = urlAcesso; kg.Ativo = true; kg.Cidade = txtCidade.Text; kg.dtCriacao = DateTime.Now; kg.Estado = ddlEstado.SelectedValue; kg.Ativo = Convert.ToBoolean(ddlAtivo.SelectedValue); dk.GetTable <Kart_Grupo>().InsertOnSubmit(kg); dk.SubmitChanges(System.Data.Linq.ConflictMode.FailOnFirstConflict); int NovoIdGrupo = kg.idGrupo; Kart_Usuario_Grupo ug = new Kart_Usuario_Grupo(); ug.idGrupo = NovoIdGrupo; ug.idUsuario = user.idUsuario; ug.Admin = true; ug.Aprovado = true; ug.dtCriacao = DateTime.Now; dk.GetTable <Kart_Usuario_Grupo>().InsertOnSubmit(ug); dk.SubmitChanges(System.Data.Linq.ConflictMode.FailOnFirstConflict); EMail.EnviarEmailStatusGrupo(user.idUsuario, kg.idGrupo); Alert("Cadastro do Grupo efetuado com sucesso!"); DisableEditGrupo(true); List <Kart_Grupo> lstGrupos = (from g in new DataKartDataContext().Kart_Grupos where g.Ativo == true select g).ToList(); CacheHelper.Add(lstGrupos, "AllGrupo"); } else { if (IsAdmin) { kg = (from g in dk.Kart_Grupos where g.idGrupo == IdGrupo select g).FirstOrDefault(); if (kg.NomeGrupo != nomeGrupo) { int count = (from g in dk.Kart_Grupos where g.NomeGrupo.Equals(nomeGrupo) select g).Count(); if (count > 0) { throw new Exception("Já existe um grupo cadastro com esse Nome!"); } } if (kg.Sigla != sigla) { int count = (from g in dk.Kart_Grupos where g.Sigla.Equals(sigla) select g).Count(); if (count > 0) { throw new Exception("Já existe um grupo cadastro com essa Sigla!"); } } if (kg.UrlAcesso != urlAcesso) { int count = (from g in dk.Kart_Grupos where g.UrlAcesso.Equals(urlAcesso) select g).Count(); if (count > 0) { throw new Exception("Já existe um grupo cadastro com essa Url!"); } } kg.Id_Usuario_Lider = user.idUsuario; kg.NomeGrupo = nomeGrupo; kg.permitirInsricoes = Convert.ToBoolean(ddlPermitirInscricoes.SelectedValue); kg.Sigla = sigla; kg.UrlAcesso = urlAcesso; kg.Ativo = true; kg.Cidade = txtCidade.Text; kg.dtCriacao = DateTime.Now; kg.Estado = ddlEstado.SelectedValue; kg.Ativo = Convert.ToBoolean(ddlAtivo.SelectedValue); dk.SubmitChanges(System.Data.Linq.ConflictMode.FailOnFirstConflict); EMail.EnviarEmailStatusGrupo(user.idUsuario, kg.idGrupo); Alert("Alteração do grupo efetuado com sucesso!"); DisableEditGrupo(true); if (chkEnviarTodosUsuarios.Checked) { //Pegar os usuarário do grupo e disparar o e-mail informando da alteração. int[] idUsuarios = (from ug in dk.Kart_Usuario_Grupos where ug.idGrupo == kg.idGrupo && ug.idUsuario != user.idUsuario && ug.Aprovado == true select ug.idUsuario).ToArray(); foreach (int idusuario in idUsuarios) { EMail.EnviarEmailStatusGrupo(idusuario, kg.idGrupo); } } chkEnviarTodosUsuarios.Visible = false; chkEnviarTodosUsuarios.Checked = false; btnEditar.Text = "Editar Grupo"; ltTitulo.Text = "Informações do Grupo"; ltDescricao.Text = "Efetuar alteração do Grupo"; if (ViewState["OldIdGrupo"] != null) { IdGrupo = Convert.ToInt16(ViewState["OldIdGrupo"]); ViewState["OldIdGrupo"] = null; popularTela(IdGrupo); CarregarCampeonato(IdGrupo); CarregarGruposDesativados(); } } else { Alert("Você não possue permissão para alterar este grupo."); } } } catch (Exception ex) { Alert(ex); } }