예제 #1
0
 public ActionResult Block(UserProfile userprofile)
 {
     if (ModelState.IsValid)
     {
         db.Entry(userprofile).State = EntityState.Modified;
         db.SaveChanges();
         return RedirectToAction("indexcustomer");
     }
     return View(userprofile);
 }
예제 #2
0
        public ActionResult Create(UserProfile userprofile)
        {
            if (ModelState.IsValid)
            {
                db.UserProfiles.Add(userprofile);
                db.SaveChanges();
                return RedirectToAction("Index");
            }

            return View(userprofile);
        }
예제 #3
0
        public static bool IsInAnyRole(UserProfile user, params string[] roles)
        {
            var inRoles = Roles.GetRolesForUser(user.UserName);
            foreach (var role in roles)
            {
                if (inRoles.Contains(role))
                {
                    return true;
                }
            }

            return false;
        }
예제 #4
0
        // POST api/Default1
        public HttpResponseMessage PostOrder(IList<CartItem> cartItems)
        {
            if (ModelState.IsValid)
            {
                var user = new UserProfile();
                using (CanteenContext ctx = new CanteenContext())
                {
                    user = (from o in ctx.UserProfiles orderby o.UserId where o.UserName == User.Identity.Name select o).ToList().FirstOrDefault();
                }
                db.Entry(user).State = EntityState.Unchanged;
                var order = new Order()
                {
                    DateConfirmed = DateTime.Now,
                    DateCreated = DateTime.Now,
                    DateDelivered = DateTime.Now,
                    IsConfirmed = false,
                    IsDelivered = false,

                    User = user
                };
                db.Orders.Add(order);
                db.SaveChanges();

                foreach (var i in cartItems)
                {
                    var orderItem = new OrderItem()
                    {
                        MenuItemId = i.Id,
                        OrderId = order.OrderId,
                        Quantity = i.Quantity
                    };

                    db.OrderItems.Add(orderItem);
                }

                db.SaveChanges();

                HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created, cartItems);
                return response;
            }
            else
            {
                return Request.CreateResponse(HttpStatusCode.BadRequest);
            }
        }
예제 #5
0
        public ActionResult IndexCustomerActive()
        {
            var user = new UserProfile();
            using (CanteenContext ctx = new CanteenContext())
            {
                user = (from o in ctx.UserProfiles orderby o.UserId where o.UserName == User.Identity.Name select o).ToList().FirstOrDefault();
            }
            var orders = new List<Order>();

            using (CanteenContext ctx = new CanteenContext())
            {
                orders = (from o in ctx.Orders.Include("User") orderby o.OrderId where o.User.UserId == user.UserId && o.IsDelivered == false select o).ToList();
            }
            var fullOrders = new List<OrderDTO>();

            foreach (var order in orders)
            {
                var fullOrder = new OrderDTO(order);
                var orderItems = new List<OrderItemDTO>();
                using (CanteenContext ctx = new CanteenContext())
                {
                    var orderItemsFull = (from o in ctx.OrderItems orderby o.OrderItemId where o.OrderId == fullOrder.OrderId select o).ToList();
                    foreach (var i in orderItemsFull)
                    {
                        var menuItem = (from o in ctx.MenuItems orderby o.MenuItemId where o.MenuItemId == i.MenuItemId select o).ToList().FirstOrDefault();
                        var orderX = new OrderItemDTO(i);
                        orderX.MenuItem = menuItem;
                        if (menuItem != null)
                            orderItems.Add(orderX);
                    }

                }
                fullOrder.OrderItems = orderItems;
                if (fullOrder.OrderItems.Count() > 0)
                    fullOrders.Add(fullOrder);
            }
            return View("IndexCustomer", fullOrders);
        }
예제 #6
0
 //
 // GET: /Profile/Create
 private UserProfile _getCurrentUser()
 {
     var userprofile = new UserProfile();
     using (CanteenContext ctx = new CanteenContext())
     {
         userprofile = (from o in ctx.UserProfiles orderby o.UserId where o.UserName == User.Identity.Name select o).ToList().FirstOrDefault();
     }
     return userprofile;
 }
예제 #7
0
 private void _addToRole(UserProfile user, string roleName)
 {
     var roles = new string[] { "Employee", "Client", "Manager" };
     if (!Roles.RoleExists(roleName))
     {
         Roles.CreateRole(roleName);
     }
     var inRoles = Roles.GetRolesForUser(user.UserName);
     foreach (var role in roles)
     {
         if (inRoles.Contains(role))
         {
             Roles.RemoveUserFromRole(user.UserName, role);
         }
     }
     Roles.AddUserToRole(user.UserName, roleName);
 }
예제 #8
0
 public ActionResult MyDetails()
 {
     var userprofile = new UserProfile();
     using (CanteenContext ctx = new CanteenContext())
     {
         userprofile = (from o in ctx.UserProfiles orderby o.UserId where o.UserName == User.Identity.Name select o).ToList().FirstOrDefault();
     }
     if (userprofile == null)
     {
         return HttpNotFound();
     }
     return View(userprofile);
 }
예제 #9
0
 public ActionResult Edit(UserProfile userprofile)
 {
     if (ModelState.IsValid)
     {
         db.Entry(userprofile).State = EntityState.Modified;
         db.SaveChanges();
         return RedirectToAction("MyDetails");
     }
     return View(userprofile);
 }
예제 #10
0
 public UserProfileDTO(UserProfile user)
 {
     this.UserId = user.UserId;
     this.UserName = user.UserName;
     this.FirstName = user.FirstName;
     this.LastName = user.LastName;
     this.PhoneNumber = user.PhoneNumber;
     this.Email = user.Email;
     this.Blocked = user.Blocked;
 }
예제 #11
0
        public ActionResult Login(LoginModel model, string returnUrl)
        {
            var userprofile = new UserProfile();
            using (CanteenContext ctx = new CanteenContext())
            {
                userprofile = (from o in ctx.UserProfiles orderby o.UserId where o.UserName == model.UserName && o.Blocked==false select o).ToList().FirstOrDefault();
            }
            if (userprofile == null)
            {
                ModelState.AddModelError("", "You have been blocked.");
            }
            else
            {

                if (ModelState.IsValid && WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe))
                {
                    return RedirectToLocal(returnUrl);
                }

                // If we got this far, something failed, redisplay form
                ModelState.AddModelError("", "The user name or password provided is incorrect.");
            }
            return View(model);
        }