Esempio n. 1
0
        public ActionResult ChangeAssosiationResult(ChangeAssosiationViewModel model)
        {
            var db          = new OneDriveDbContext();
            var userManager = HttpContext.GetOwinContext().GetUserManager <ApplicationUserManager>();

            if (model.CurrentId == -1)
            {
                if (db.Files.Any(x => x.DocumentName == model.Title) && userManager.Users.Any(x => x.Title == model.Title))
                {
                    if (model.NewId == -1 || !db.Files.Any(x => x.DocumentId == model.NewId))
                    {
                        db.Files.First(x => x.DocumentName == model.Title).DocumentId = model.NewId;
                        var user = userManager.Users.First(x => x.Title == model.Title);
                        user.Title = GetTitleById(model.NewId);
                        if (userManager.Update(user).Succeeded)
                        {
                            db.SaveChanges();
                            return(View(true));
                        }
                    }
                }
            }
            else if (db.Files.Any(x => x.DocumentId == model.CurrentId))
            {
                if (model.NewId == -1 || !db.Files.Any(x => x.DocumentId == model.NewId))
                {
                    db.Files.First(x => x.DocumentId == model.CurrentId).DocumentId = model.NewId;
                    db.SaveChanges();
                    return(View(true));
                }
            }
            return(View(false));
        }
Esempio n. 2
0
        public ActionResult ChangeAssosiation(int id = -1, string title = "")
        {
            if (id == -1 && title == "")
            {
                return(View("Error"));
            }
            if (title == "")
            {
                title = GetTitleById(id);
            }

            var db    = new OneDriveDbContext();
            var model = new ChangeAssosiationViewModel {
                Title = title, CurrentId = id, NewId = id
            };

            return(db.Files.Any(x => id != -1 ? x.DocumentId == id : x.DocumentName == title) ? View(model) : View("Error"));
        }