Esempio n. 1
0
        protected void chkIsApproved_CheckedChanged(object sender, EventArgs e)
        {
            //Buscando em todos os objetos
            for (int c = 0; c < this.grdUsers.Rows.Count; c++)
            {
                CheckBox chkIsApproved = (CheckBox)this.grdUsers.Rows[c].FindControl("chkIsApproved");
                Label    lblUsername   = (Label)this.grdUsers.Rows[c].FindControl("lblUsername");


                //Criando o modelo de dados a ser manipulado
                Framework.Security.Business.UserDataService userDataService = new Framework.Security.Business.UserDataService(this.UserName);
                userDataService.UserName = lblUsername.Text;


                //Se encontrou o objeto
                if (chkIsApproved == sender)
                {
                    //Se está ativando o item
                    if (((CheckBox)sender).Checked)
                    {
                        //Realizando o load do usuário para buscar as informações necessárias para aprovar o usuário
                        Framework.Security.Model.UserData userData = userDataService.LoadUser();
                        userDataService = new Framework.Security.Business.UserDataService(base.UserName, userData);

                        if (!userDataService.ApproveUser())
                        {
                            chkIsApproved.Checked = false;
                        }
                    }
                    //Se está desativando o item
                    else
                    {
                        if (!userDataService.DesapproveUser())
                        {
                            chkIsApproved.Checked = true;
                        }
                    } //endif ativando o item
                }     //endif objeto encontrado

                return;
            }//end for items
        }
Esempio n. 2
0
        private bool ApproveUser(string login, string key)
        {
            bool isApproved = false;


            Framework.Security.Business.UserDataService userService =
                new Framework.Security.Business.UserDataService(HttpContext.Current.User.Identity.Name);
            userService.UserName    = login;
            userService.ActivateKey = key;


            //Aprovando o usuário
            isApproved = userService.ApproveUser();


            //Buscando dados do usuário
            Framework.Security.Business.CustomMembershipUser customUser =
                (Framework.Security.Business.CustomMembershipUser)Membership.Provider.GetUser(login, false);


            //Se o usuário não foi encontrado
            if (customUser == null)
            {
                base.ShowErrors("Usuário não encontrado na base de dados.");
                this.MultiViewConfirm.ActiveViewIndex = 0;

                return(false);
            }
            //Se o usuário foi encontrado
            else
            {
                //inserindo as roles do usuário que está sendo inserido
                //string [] roles = new string[4];
                //roles[0] = "Apostador";
                //roles[1] = "Convidado";
                //roles[2] = "Visitante de Bolão";
                //roles[3] = "Visitante de Campeonato";

                string rolesToAdd = ConfigurationManager.AppSettings["RolesToAddAtConfirmation"];


                if (rolesToAdd != null)
                {
                    string[] roles = rolesToAdd.Split(new char[] { '|' });

                    System.Web.Security.Roles.AddUserToRoles(login, roles);
                }



                //Inserindo os usuários na lista de itens no momento da confirmação do login
                string listToAdd = ConfigurationManager.AppSettings["BolaoListToAddAtConfirmation"];

                if (!string.IsNullOrEmpty(listToAdd))
                {
                    string[] items = listToAdd.Split(new char [] { '|' });

                    foreach (string entry in items)
                    {
                        Business.Boloes.Support.Bolao bolao = new BolaoNet.Business.Boloes.Support.Bolao(login, entry);
                        bolao.Load();

                        if ((!bolao.ApostasApenasAntes) || (bolao.ApostasApenasAntes && !bolao.IsIniciado))
                        {
                            bolao.InsertMembro(new Framework.Security.Model.UserData(login));
                        }
                    }
                }//endif items a serem inseridos



                this.MultiViewConfirm.ActiveViewIndex = 1;

                //Mostrando dados do usuário
                ShowUserData(customUser);

                this.lblChave.Text = userService.ActivateKey;

                //Se não foi aprovado
                if (!isApproved)
                {
                    base.ShowErrors("Chave do usuário inválido para aprovação.");
                    this.lblStatus.Text = "Chave do usuário inválido para aprovação.";
                }
                //Se foi aprovado
                else
                {
                    base.ShowMessages("Usuário aprovado.");
                    this.lblStatus.Text = "Usuário aprovado.";

                    this.lnkTentarNovamente.Visible = false;

                    Framework.Security.Business.UserDataService userEntry =
                        new Framework.Security.Business.UserDataService("", customUser.UserData);



                    ////Salvando os dados do profile do usuário
                    //Business.Profile.CustomProfile profile = Business.Profile.CustomProfile.GetProfile();
                    //profile.NomeCampeonato = "";
                    //profile.NomeBolao = "";
                    //profile.Save();


                    Framework.Logging.Logger.LogManager.WriteInformation(null, this, "Usuário " + customUser.UserData.UserName + " aprovado.", null);


                    Framework.Security.Util.Mail.Send(userEntry.LoadUser(), Framework.Security.Util.Mail.Template.Welcome);
                } //endif se foi aprovado
            }     //endif usuário encontrado



            return(true);
        }