public ActionResult Dashboard()
        {
            if (Session["UserID"] == null)
            {
                return(RedirectToAction("Login", "Authentication", new { ReturnUrl = "/RegisteredUser/Dashboard" }));
            }

            //Check if Admin
            string[] roles = new NotesMarketPlaceRoleManager().GetRolesForUser(User.Identity.Name);
            if (roles.Contains("SuperAdmin") || roles.Contains("SubAdmin"))
            {
                return(RedirectToAction("AdminDashBoard", "Admin"));
            }

            int UserID = Convert.ToInt32(User.Identity.Name);

            var Stats = DownloadRepository.GetUserStats(UserID);

            DashboardModel DM = new DashboardModel()
            {
                NotesSold     = Stats.Item1,
                MoneyEarned   = Stats.Item2,
                Downloads     = Stats.Item3,
                Rejecteds     = Stats.Item4,
                BuyerRequests = Stats.Item5,

                InProgressNotes = NotesRepository.GetInProgressNotes(UserID),
                PublishedNotes  = NotesRepository.GetPublishedNotes(UserID)
            };

            ViewBag.Title      = "Dashboard";
            ViewBag.Authorized = true;
            return(View(DM));
        }
Example #2
0
        public ActionResult Login()
        {
            //If already login redirect to user dashboard
            if (Request.IsAuthenticated)
            {
                Session["UserID"] = User.Identity.Name;

                UserProfileModel userProfile = UserRepository.GetUserData(Convert.ToInt32(Session["UserID"]));

                if (!String.IsNullOrEmpty(userProfile.ProfilePicture))
                {
                    Session["UserProfile"] = userProfile.ProfilePicture;
                }
                else
                {
                    Session["UserProfile"] = "/Content/SystemConfig/DefaultUserProfile.png";
                }

                Session["FullName"] = userProfile.User.FirstName + " " + userProfile.User.LastName;

                Session["Email"] = userProfile.User.Email;


                //Check if Admin
                string[] roles = new NotesMarketPlaceRoleManager().GetRolesForUser(User.Identity.Name);
                if (roles.Contains("SuperAdmin") || roles.Contains("SubAdmin"))
                {
                    return(RedirectToAction("AdminDashBoard", "Admin"));
                }

                return(RedirectToAction("Dashboard", "RegisteredUser"));
            }

            if (TempData["EmailVerified"] != null)
            {
                ViewBag.EmailVerificationMsg = TempData["EmailVerifiedMsg"].ToString();
                ViewBag.EmailVerified        = (bool)TempData["EmailVerified"];
            }
            return(View());
        }
Example #3
0
        public ActionResult Login(Login Client)
        {
            if (ModelState.IsValid)
            {
                /* authenticate user return 0 when it finds wrong credentials and UserID when it's successfully authenticate user */
                int AuthResult = UserRepository.AuthenticateUser(Client);
                if (AuthResult != 0)
                {
                    if (Client.RememberMe == true)
                    {
                        FormsAuthentication.SetAuthCookie(AuthResult.ToString(), true);
                    }
                    else
                    {
                        FormsAuthentication.SetAuthCookie(AuthResult.ToString(), false);
                    }

                    //saving it in session to use it somewhere
                    Session["UserID"] = AuthResult;

                    UserProfileModel userProfile = UserRepository.GetUserData(AuthResult);

                    //if email is not verified redirect to login with verify email message
                    if (!userProfile.User.IsEmailVerified)
                    {
                        FormsAuthentication.SignOut();
                        TempData["EmailVerified"]    = false;
                        TempData["EmailVerifiedMsg"] = "Please Verify Email Address Via Mail We Have Sent You.";
                        return(RedirectToAction("Login", "Authentication"));
                    }

                    if (!String.IsNullOrEmpty(userProfile.ProfilePicture))
                    {
                        Session["UserProfile"] = userProfile.ProfilePicture;
                    }
                    else
                    {
                        Session["UserProfile"] = "/Content/SystemConfig/DefaultUserProfile.png";
                    }

                    Session["FullName"] = userProfile.User.FirstName + " " + userProfile.User.LastName;

                    Session["Email"] = userProfile.User.Email;


                    //if not entered user profile data redirect to user profile
                    if (userProfile.Country == null)
                    {
                        return(RedirectToAction("UserProfile", "RegisteredUser"));
                    }
                    else
                    {
                        //Check if Admin
                        string[] roles = new NotesMarketPlaceRoleManager().GetRolesForUser(AuthResult.ToString());
                        if (roles.Contains("SuperAdmin") | roles.Contains("SubAdmin"))
                        {
                            return(RedirectToAction("AdminDashBoard", "Admin"));
                        }

                        return(RedirectToAction("Dashboard", "RegisteredUser"));
                    }
                }
                else
                {
                    ViewBag.Success = false;
                    return(View());
                }
            }
            else
            {
                return(View());
            }
        }