示例#1
1
        public bool Insert(Student student, Database db, DbTransaction transaction)
        {
            DbCommand command = db.GetStoredProcCommand("usp_StudentInsert");

            db.AddInParameter(command, "StudentId", DbType.Guid, Guid.NewGuid());
            db.AddInParameter(command, "UserId", DbType.Guid, student.StudentUser.UserId);
            db.AddInParameter(command, "SchoolId", DbType.Guid, student.School.SchoolId);
            db.AddInParameter(command, "IsDeleted", DbType.Boolean, student.IsDeleted);
            db.AddInParameter(command, "Year", DbType.String, student.School.Year);
            db.AddInParameter(command, "StartYear", DbType.String, student.StartYear);
            db.AddInParameter(command, "StartMonth", DbType.String, student.StartMonth);
            db.AddInParameter(command, "Status", DbType.String, student.Status);
            db.AddInParameter(command, "PreviousSchoolInfo", DbType.String, student.PreviousSchoolInfo);
            db.AddInParameter(command, "PreviousSchool", DbType.String, student.PreviousSchool);
            db.AddInParameter(command, "MajorId", DbType.Int16, student.MajorId);
            db.AddInParameter(command, "CreatedBy", DbType.Guid, student.CreatedBy);

            db.AddOutParameter(command, "CreatedDate", DbType.DateTime, 30);

            db.ExecuteNonQuery(command, transaction);

            student.CreatedDate = Convert.ToDateTime(db.GetParameterValue(command, "CreatedDate").ToString());
            student.UpdatedDate = student.CreatedDate;

            return true;
        }
示例#2
0
        public bool Delete(Student student, Database db, DbTransaction transaction)
        {
            DbCommand command = db.GetStoredProcCommand("usp_StudentDelete");

            db.AddInParameter(command, "StudentId", DbType.Guid, student.StudentId);

            db.ExecuteNonQuery(command, transaction);

            return true;
        }
示例#3
0
        /// <summary>
        /// Checks if user record with UserId exist in User table of the database.
        /// </summary>
        /// <param name="user"></param>
        /// <returns></returns>
        public bool IsStudentExist(Student student)
        {
            Database db = DatabaseFactory.CreateDatabase(Constants.CONNECTIONSTRING);
            DbCommand command = db.GetStoredProcCommand("usp_Student_IsStudentExist");

            db.AddInParameter(command, "StudentId", DbType.Guid, student.StudentId);
            db.AddOutParameter(command, "IsExist", DbType.Boolean, 1);

            db.ExecuteNonQuery(command);

            return Convert.ToBoolean(db.GetParameterValue(command, "IsExist").ToString());
        }
        public void loaddata()
        {
            // school data

            student = RHP.StudentManagement.Student.Select(Guid.Parse(Membership.GetUser().ProviderUserKey.ToString()));

            if (student != null)
            {
               // Session[Constants.SESSION_LOGGED_STUDENT] = student;
                if (student.School != null)
                {

                    if (!string.IsNullOrEmpty(student.School.SchoolId.ToString()))
                    {
                        HiddenFieldSchoolId.Value = student.School.SchoolId.ToString();

                        for (int i = 0; i < DrpSchoolName.Items.Count; i++)
                        {
                            if (DrpSchoolName.Items[i].Value.ToString().ToLower() == student.School.SchoolId.ToString())
                            {
                                DrpSchoolName.Value = student.School.SchoolId.ToString();
                                //DrpSchoolName.Items[i].Selected = true;
                            }
                        }
                    }
                }

                if (!string.IsNullOrEmpty(student.Year.ToString()))
                {
                    for (int i = 0; i < DRPYear.Items.Count; i++)
                    {
                        if (DRPYear.Items[i].Value.ToString().ToLower() == student.Year.ToString())
                        {
                            DRPYear.ClearSelection();
                            DRPYear.Items[i].Selected = true;
                        }
                    }
                }

                if (!string.IsNullOrEmpty(student.Status))
                {
                    for (int i = 0; i < Status.Items.Count; i++)
                    {
                        if (Status.Items[i].Value.ToString().ToLower() == student.Status.ToLower())
                        {
                            Status.ClearSelection();
                            Status.Items[i].Selected = true;
                        }
                    }
                }

                if (!string.IsNullOrEmpty(student.PreviousSchoolInfo))
                {
                    for (int i = 0; i < DRPpreviousschoolinfo.Items.Count; i++)
                    {
                        if (DRPpreviousschoolinfo.Items[i].Value.ToString().ToLower() == student.PreviousSchoolInfo.ToLower())
                        {
                            DRPpreviousschoolinfo.ClearSelection();
                            DRPpreviousschoolinfo.Items[i].Selected = true;
                        }
                    }
                }

                if (student.MajorId.HasValue)
                {
                    for (int i = 0; i < DRPCurentMajor.Items.Count; i++)
                    {
                        if (DRPCurentMajor.Items[i].Value.ToString().ToLower() == student.MajorId.ToString().ToLower())
                        {
                            DRPCurentMajor.ClearSelection();
                            DRPCurentMajor.Items[i].Selected = true;
                        }
                    }
                }

                if (!string.IsNullOrEmpty(student.StartMonth.ToString()))
                {
                    for (int i = 0; i < DRPstartMonth.Items.Count; i++)
                    {
                        if (DRPstartMonth.Items[i].Value.ToString().ToLower() == student.StartMonth.ToString())
                        {
                            DRPstartMonth.ClearSelection();
                            DRPstartMonth.Items[i].Selected = true;
                        }
                    }
                }

                if (!string.IsNullOrEmpty(student.StartYear.ToString()))
                {
                    for (int i = 0; i < DRPstartYear.Items.Count; i++)
                    {
                        if (DRPstartYear.Items[i].Value.ToString().ToLower() == student.StartYear.ToString())
                        {
                            DRPstartYear.ClearSelection();
                            DRPstartYear.Items[i].Selected = true;
                        }
                    }
                }

                if (DRPpreviousschoolinfo.SelectedItem.Value == "Transfer student")
                {
                    previousschoolID.Visible = true;
                    previousschool.Text = string.IsNullOrEmpty(student.PreviousSchool) ? string.Empty : student.PreviousSchool;
                }
                else
                {
                    previousschoolID.Visible = false;
                }

               // startMonth.Text = string.IsNullOrEmpty(student.StartMonth.ToString()) ? string.Empty : student.StartMonth.ToString();
               // startYear.Text = string.IsNullOrEmpty(student.StartYear.ToString()) ? string.Empty : student.StartYear.ToString();
              //  LandLoadPlace.Text = string.IsNullOrEmpty(student.LandloadPlace) ? string.Empty : student.LandloadPlace;
            }
        }
示例#5
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string ReturnURL        = string.Empty;
            string userRole         = string.Empty;
            Uri    currentDomainURL = new Uri(HttpContext.Current.Request.Url.AbsoluteUri);

            string value = Utility.GetQueryStringValueByKey(Request, "type");

            if (!IsPostBack)
            {
                if (value == "s")
                {
                    ReturnURL = "/Student/Student_Profile.aspx";
                    userRole  = "student";
                }
                else if (value == "l")
                {
                    ReturnURL = "/Land_load/Land_load_Profile.aspx";
                    userRole  = "landlord";
                }
                else
                {
                    ReturnURL = "~/";
                }
            }

            try
            {
                IAuthorizationState authorization = facebookClient.ProcessUserAuthorization();

                User user = new User();
                RHP.StudentManagement.Student student = new RHP.StudentManagement.Student();

                Landlord landload = new Landlord();

                if (authorization == null)
                {
                    SendEmail("FBReturn URL", string.Format("Return URL: {0}, App Id: {1}, App Secret: {2}", currentDomainURL.ToString(),
                                                            facebookClient.ClientIdentifier.ToString(), facebookClient.ClientCredentialApplicator.ToString()));
                    facebookClient.RequestUserAuthorization(scope: new[] { FBClient.Scopes.Email }, returnTo: currentDomainURL);
                }
                else// if (authorization.Scope.Count > 0)
                {
                    string accessCode = string.Empty;
                    if (authorization != null && authorization.AccessToken != null)
                    {
                        accessCode = Uri.EscapeDataString(authorization.AccessToken);
                    }

                    IOAuth2Graph oauth2Graph = facebookClient.GetGraph(authorization, new[] { FBGraph.Fields.Defaults, FBGraph.Fields.Email, FBGraph.Fields.Picture });

                    //Todo: Register the user here if not an existing member.
                    user.FBid = string.IsNullOrEmpty(HttpUtility.HtmlEncode(oauth2Graph.Id)) ? string.Empty : HttpUtility.HtmlEncode(oauth2Graph.Id);

                    user.FirstName           = string.IsNullOrEmpty(HttpUtility.HtmlEncode(oauth2Graph.FirstName)) ? string.Empty : HttpUtility.HtmlEncode(oauth2Graph.FirstName);
                    user.LastName            = string.IsNullOrEmpty(HttpUtility.HtmlEncode(oauth2Graph.LastName)) ? string.Empty : HttpUtility.HtmlEncode(oauth2Graph.LastName);
                    user.Email               = string.IsNullOrEmpty(HttpUtility.HtmlEncode(oauth2Graph.Email)) ? string.Empty : HttpUtility.HtmlEncode(oauth2Graph.Email);
                    user.PersonalEmail       = string.IsNullOrEmpty(HttpUtility.HtmlEncode(oauth2Graph.Email)) ? string.Empty : HttpUtility.HtmlEncode(oauth2Graph.Email);
                    user.FBAccessToken       = string.IsNullOrEmpty(authorization.AccessToken) ? string.Empty : authorization.AccessToken;
                    user.FBProfilePictureURL = string.IsNullOrEmpty(HttpUtility.HtmlEncode(oauth2Graph.AvatarUrl)) ? string.Empty : HttpUtility.HtmlEncode(oauth2Graph.AvatarUrl);
                    user.Gender              = string.IsNullOrEmpty(HttpUtility.HtmlEncode(oauth2Graph.Gender)) ? string.Empty : HttpUtility.HtmlEncode(oauth2Graph.Gender);
                    user.IsFBUser            = true;
                    user.Password            = user.FBid;
                    user.UserName            = user.FBid;
                    user.Question            = "Are you FB User ?";
                    user.Answer              = "FB" + user.FBid;

                    if (user.IsExistingFbUser(user.FBid))
                    {
                        // authanticate fbuser get userneame and pwd
                        // get user from fbid (username)
                        // stringpassword = membership

                        user.UserName = user.GetFBUsernameByFBId(user.FBid);

                        if (user.AuthenticateUser())
                        {
                            try
                            {
                                Session[Constants.SESSION_LOGGED_USER] = user;
                                user.RedirectUserFromLogin(false);
                            }
                            catch (Exception ex)
                            {
                                user.LogOut();
                            }
                        }
                        else
                        {
                            user.LogOut();
                        }
                    }
                    else
                    {
                        if (user.IsUserEmailExist(user.Email))
                        {
                            //Todo need to handle this part correctly.
                            Page.ClientScript.RegisterStartupScript(this.GetType(), "Redirect", "window.onload = function(){ alert('" + Messages.EmailExist + "'); window.location = '/Login.aspx'; }", true);
                        }
                        else
                        {
                            bool   boolMembershipUserCreated = false;
                            object objCreateMembershipUser   = new object();

                            user.UserId             = Guid.NewGuid();
                            objCreateMembershipUser = user.AddMembershipPartialUser(user.UserName, user.Password, user.Email, user.Question, user.Answer, true, user.UserId.Value, userRole);

                            bool.TryParse(objCreateMembershipUser.ToString(), out boolMembershipUserCreated);

                            if (boolMembershipUserCreated)
                            {
                                FormsAuthentication.SetAuthCookie(user.UserName, false);
                                user.UpdatedBy = user.UserId.HasValue ? user.UserId.Value : Guid.Parse(Membership.GetUser().ProviderUserKey.ToString());
                                user.CreatedBy = user.UserId.HasValue ? user.UserId.Value : Guid.Parse(Membership.GetUser().ProviderUserKey.ToString());

                                if (user.Save())
                                {
                                    Session[Constants.SESSION_LOGGED_USER] = user;
                                    MembershipUser newUser = Membership.GetUser(user.UserName);
                                    user.RedirectUserFromLogin(true);
                                }
                                else
                                {
                                    user.LogOut();
                                    //Todo delete membership user from tables
                                    Response.Redirect("~/Login.aspx", false);
                                }
                            }
                            else
                            {
                                user.LogOut();
                                Response.Redirect("~/Login.aspx", false);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                string emailText = String.Format("Message:{0}, Source:{1}, StackTrace:{2}", ex.Message, ex.Source, ex.StackTrace);
                SendEmail("FB Exception", emailText);
                throw ex;
            }
        }
示例#6
0
        public void LoadUserData()
        {
            // user data
            user = User.Select(Guid.Parse(Membership.GetUser().ProviderUserKey.ToString()));

            Name.Text           = string.IsNullOrEmpty(user.Name) ? string.Empty : user.Name;
            Email.Text          = string.IsNullOrEmpty(Membership.GetUser().Email.ToString()) ? string.Empty : Membership.GetUser().Email.ToString();
            Address.Text        = string.IsNullOrEmpty(user.StreetAddress) ? string.Empty : user.StreetAddress;
            City.Text           = string.IsNullOrEmpty(user.City) ? string.Empty : user.City;
            Zip.Text            = string.IsNullOrEmpty(user.Zip) ? string.Empty : user.Zip;
            Mobile.Text         = string.IsNullOrEmpty(user.BestContactNumber) ? string.Empty : user.BestContactNumber;
            Question.Text       = user.GetSeacretQuestion(Membership.GetUser().UserName.ToString());
            DriversLicense.Text = string.IsNullOrEmpty(user.DriversLicenseNumber) ? string.Empty : user.DriversLicenseNumber;


            if (!string.IsNullOrEmpty(user.Status))
            {
                for (int i = 0; i < Status.Items.Count; i++)
                {
                    if (Status.Items[i].Value.ToString().ToLower() == user.Status.ToLower())
                    {
                        Status.Items[i].Selected = true;
                    }
                }
            }
            if (!string.IsNullOrEmpty(user.State))
            {
                for (int i = 0; i < Drpstate.Items.Count; i++)
                {
                    if (Drpstate.Items[i].Value.ToString().ToLower() == user.State.ToLower())
                    {
                        Drpstate.Items[i].Selected = true;
                    }
                }
            }

            if (!string.IsNullOrEmpty(user.Gender))
            {
                for (int i = 0; i < DrpGender.Items.Count; i++)
                {
                    if (DrpGender.Items[i].Value.ToString().ToLower() == user.Gender.ToLower())
                    {
                        DrpGender.Items[i].Selected = true;
                    }
                }
            }

            // school data

            student = RHP.StudentManagement.Student.Select(Guid.Parse(Membership.GetUser().ProviderUserKey.ToString()));

            if (student != null)
            {
                if (!string.IsNullOrEmpty(student.School.SchoolId.ToString()))
                {
                    for (int i = 0; i < DrpSchoolName.Items.Count; i++)
                    {
                        if (DrpSchoolName.Items[i].Value.ToString().ToLower() == student.School.SchoolId.ToString())
                        {
                            DrpSchoolName.Items[i].Selected = true;
                        }
                    }
                }
                if (!string.IsNullOrEmpty(student.Year.ToString()))
                {
                    for (int i = 0; i < DRPYear.Items.Count; i++)
                    {
                        if (DRPYear.Items[i].Value.ToString().ToLower() == student.Year.ToString())
                        {
                            DRPYear.Items[i].Selected = true;
                        }
                    }
                }
                LandLoadName.Text  = string.IsNullOrEmpty(student.LandloadName) ? string.Empty : student.LandloadName;
                LandLoadPlace.Text = string.IsNullOrEmpty(student.LandloadPlace) ? string.Empty : student.LandloadPlace;
            }
        }
示例#7
0
        public void loaddata()
        {
            // school data

            student = RHP.StudentManagement.Student.Select(Guid.Parse(Membership.GetUser().ProviderUserKey.ToString()));

            if (student != null)
            {
                // Session[Constants.SESSION_LOGGED_STUDENT] = student;
                if (student.School != null)
                {
                    if (!string.IsNullOrEmpty(student.School.SchoolId.ToString()))
                    {
                        HiddenFieldSchoolId.Value = student.School.SchoolId.ToString();

                        for (int i = 0; i < DrpSchoolName.Items.Count; i++)
                        {
                            if (DrpSchoolName.Items[i].Value.ToString().ToLower() == student.School.SchoolId.ToString())
                            {
                                DrpSchoolName.Value = student.School.SchoolId.ToString();
                                //DrpSchoolName.Items[i].Selected = true;
                            }
                        }
                    }
                }

                if (!string.IsNullOrEmpty(student.Year.ToString()))
                {
                    for (int i = 0; i < DRPYear.Items.Count; i++)
                    {
                        if (DRPYear.Items[i].Value.ToString().ToLower() == student.Year.ToString())
                        {
                            DRPYear.ClearSelection();
                            DRPYear.Items[i].Selected = true;
                        }
                    }
                }

                if (!string.IsNullOrEmpty(student.Status))
                {
                    for (int i = 0; i < Status.Items.Count; i++)
                    {
                        if (Status.Items[i].Value.ToString().ToLower() == student.Status.ToLower())
                        {
                            Status.ClearSelection();
                            Status.Items[i].Selected = true;
                        }
                    }
                }


                if (!string.IsNullOrEmpty(student.PreviousSchoolInfo))
                {
                    for (int i = 0; i < DRPpreviousschoolinfo.Items.Count; i++)
                    {
                        if (DRPpreviousschoolinfo.Items[i].Value.ToString().ToLower() == student.PreviousSchoolInfo.ToLower())
                        {
                            DRPpreviousschoolinfo.ClearSelection();
                            DRPpreviousschoolinfo.Items[i].Selected = true;
                        }
                    }
                }


                if (student.MajorId.HasValue)
                {
                    for (int i = 0; i < DRPCurentMajor.Items.Count; i++)
                    {
                        if (DRPCurentMajor.Items[i].Value.ToString().ToLower() == student.MajorId.ToString().ToLower())
                        {
                            DRPCurentMajor.ClearSelection();
                            DRPCurentMajor.Items[i].Selected = true;
                        }
                    }
                }


                if (!string.IsNullOrEmpty(student.StartMonth.ToString()))
                {
                    for (int i = 0; i < DRPstartMonth.Items.Count; i++)
                    {
                        if (DRPstartMonth.Items[i].Value.ToString().ToLower() == student.StartMonth.ToString())
                        {
                            DRPstartMonth.ClearSelection();
                            DRPstartMonth.Items[i].Selected = true;
                        }
                    }
                }


                if (!string.IsNullOrEmpty(student.StartYear.ToString()))
                {
                    for (int i = 0; i < DRPstartYear.Items.Count; i++)
                    {
                        if (DRPstartYear.Items[i].Value.ToString().ToLower() == student.StartYear.ToString())
                        {
                            DRPstartYear.ClearSelection();
                            DRPstartYear.Items[i].Selected = true;
                        }
                    }
                }


                if (DRPpreviousschoolinfo.SelectedItem.Value == "Transfer student")
                {
                    previousschoolID.Visible = true;
                    previousschool.Text      = string.IsNullOrEmpty(student.PreviousSchool) ? string.Empty : student.PreviousSchool;
                }
                else
                {
                    previousschoolID.Visible = false;
                }


                // startMonth.Text = string.IsNullOrEmpty(student.StartMonth.ToString()) ? string.Empty : student.StartMonth.ToString();
                // startYear.Text = string.IsNullOrEmpty(student.StartYear.ToString()) ? string.Empty : student.StartYear.ToString();
                //  LandLoadPlace.Text = string.IsNullOrEmpty(student.LandloadPlace) ? string.Empty : student.LandloadPlace;
            }
        }
示例#8
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string ReturnURL = string.Empty;
            string userRole = string.Empty;
            Uri currentDomainURL = new Uri(HttpContext.Current.Request.Url.AbsoluteUri);

            string value = Utility.GetQueryStringValueByKey(Request, "type");

            if (!IsPostBack)
            {

                if (value == "s")
                {
                    ReturnURL = "/Student/Student_Profile.aspx";
                    userRole = "student";
                }
                else if (value == "l")
                {
                    ReturnURL = "/Land_load/Land_load_Profile.aspx";
                    userRole = "landlord";
                }
                else
                {
                    ReturnURL = "~/";
                }
            }

            try
            {
                IAuthorizationState authorization = facebookClient.ProcessUserAuthorization();

                User user = new User();
                RHP.StudentManagement.Student student = new RHP.StudentManagement.Student();

                Landlord landload = new Landlord();

                if (authorization == null)
                {
                    SendEmail("FBReturn URL", string.Format("Return URL: {0}, App Id: {1}, App Secret: {2}", currentDomainURL.ToString(),
                        facebookClient.ClientIdentifier.ToString(), facebookClient.ClientCredentialApplicator.ToString()));
                    facebookClient.RequestUserAuthorization(scope: new[] { FBClient.Scopes.Email }, returnTo: currentDomainURL);
                }
                else// if (authorization.Scope.Count > 0)
                {
                    string accessCode = string.Empty;
                    if (authorization != null && authorization.AccessToken != null)
                    {
                        accessCode = Uri.EscapeDataString(authorization.AccessToken);
                    }

                    IOAuth2Graph oauth2Graph = facebookClient.GetGraph(authorization, new[] { FBGraph.Fields.Defaults, FBGraph.Fields.Email, FBGraph.Fields.Picture });

                    //Todo: Register the user here if not an existing member.
                    user.FBid = string.IsNullOrEmpty(HttpUtility.HtmlEncode(oauth2Graph.Id)) ? string.Empty : HttpUtility.HtmlEncode(oauth2Graph.Id);

                    user.FirstName = string.IsNullOrEmpty(HttpUtility.HtmlEncode(oauth2Graph.FirstName)) ? string.Empty : HttpUtility.HtmlEncode(oauth2Graph.FirstName);
                    user.LastName = string.IsNullOrEmpty(HttpUtility.HtmlEncode(oauth2Graph.LastName)) ? string.Empty : HttpUtility.HtmlEncode(oauth2Graph.LastName);
                    user.Email = string.IsNullOrEmpty(HttpUtility.HtmlEncode(oauth2Graph.Email)) ? string.Empty : HttpUtility.HtmlEncode(oauth2Graph.Email);
                    user.PersonalEmail = string.IsNullOrEmpty(HttpUtility.HtmlEncode(oauth2Graph.Email)) ? string.Empty : HttpUtility.HtmlEncode(oauth2Graph.Email);
                    user.FBAccessToken = string.IsNullOrEmpty(authorization.AccessToken) ? string.Empty : authorization.AccessToken;
                    user.FBProfilePictureURL = string.IsNullOrEmpty(HttpUtility.HtmlEncode(oauth2Graph.AvatarUrl)) ? string.Empty : HttpUtility.HtmlEncode(oauth2Graph.AvatarUrl);
                    user.Gender = string.IsNullOrEmpty(HttpUtility.HtmlEncode(oauth2Graph.Gender)) ? string.Empty : HttpUtility.HtmlEncode(oauth2Graph.Gender);
                    user.IsFBUser = true;
                    user.Password = user.FBid;
                    user.UserName = user.FBid;
                    user.Question = "Are you FB User ?";
                    user.Answer = "FB" + user.FBid;

                    if (user.IsExistingFbUser(user.FBid))
                    {
                        // authanticate fbuser get userneame and pwd
                        // get user from fbid (username)
                        // stringpassword = membership

                        user.UserName = user.GetFBUsernameByFBId(user.FBid);

                        if (user.AuthenticateUser())
                        {
                            try
                            {
                                Session[Constants.SESSION_LOGGED_USER] = user;
                                user.RedirectUserFromLogin(false);
                            }
                            catch (Exception ex)
                            {
                                user.LogOut();
                            }
                        }
                        else
                        {
                            user.LogOut();
                        }

                    }
                    else
                    {

                        if (user.IsUserEmailExist(user.Email))
                        {
                            //Todo need to handle this part correctly.
                            Page.ClientScript.RegisterStartupScript(this.GetType(), "Redirect", "window.onload = function(){ alert('" + Messages.EmailExist + "'); window.location = '/Login.aspx'; }", true);

                        }
                        else
                        {
                            bool boolMembershipUserCreated = false;
                            object objCreateMembershipUser = new object();

                            user.UserId = Guid.NewGuid();
                            objCreateMembershipUser = user.AddMembershipPartialUser(user.UserName, user.Password, user.Email, user.Question, user.Answer, true, user.UserId.Value, userRole);

                            bool.TryParse(objCreateMembershipUser.ToString(), out boolMembershipUserCreated);

                            if (boolMembershipUserCreated)
                            {
                                FormsAuthentication.SetAuthCookie(user.UserName, false);
                                user.UpdatedBy = user.UserId.HasValue ? user.UserId.Value : Guid.Parse(Membership.GetUser().ProviderUserKey.ToString());
                                user.CreatedBy = user.UserId.HasValue ? user.UserId.Value : Guid.Parse(Membership.GetUser().ProviderUserKey.ToString());

                                if (user.Save())
                                {
                                    Session[Constants.SESSION_LOGGED_USER] = user;
                                    MembershipUser newUser = Membership.GetUser(user.UserName);
                                    user.RedirectUserFromLogin(true);
                                }
                                else
                                {
                                    user.LogOut();
                                    //Todo delete membership user from tables
                                    Response.Redirect("~/Login.aspx", false);
                                }
                            }
                            else
                            {
                                user.LogOut();
                                Response.Redirect("~/Login.aspx", false);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                string emailText = String.Format("Message:{0}, Source:{1}, StackTrace:{2}", ex.Message, ex.Source, ex.StackTrace);
                SendEmail("FB Exception", emailText);
                throw ex;
            }
        }