Example #1
0
        //
        // GET: /Characters/Edit/?Name=<Name>
        public ActionResult Edit(string Name)
        {
            if (!Manager.IsReallyAuthenticated(Request))
                return RedirectToAction("LogOn", "Account");

            var character = Character.Store.ReadOneOrDefault(c => c.Name == Name);

            if (null == character)
                return RedirectToAction("Index", "Characters");

            if (Manager.GetCurrentUser().ID != character.AccountID)
                return RedirectToAction("Index", "Characters");

            var model = new EditCharacterModel()
            {
                OldName = character.Name,
                Name = character.Name,
                Level = character.Level.ToString(),
                Race = character.Race,
                Class = character.Class,
                PrimarySpecialization = character.PrimarySpecialization,
                SecondarySpecialization = character.SecondarySpecialization
            };

            return View(model);
        }
Example #2
0
        public ActionResult Edit(EditCharacterModel model)
        {
            if (!Manager.IsReallyAuthenticated(Request))
                return RedirectToAction("LogOn", "Account");

            var character = new Character()
            {
                Name = model.Name,
                Level = int.Parse(model.Level),
                Race = model.Race,
                Class = model.Class,
                AccountID = Manager.GetCurrentUser().ID,
                PrimarySpecialization = model.PrimarySpecialization,
                SecondarySpecialization = model.SecondarySpecialization
            };

            string errorMsg;

            if (!Character.Store.TryModify(model.OldName, character, out errorMsg))
                return new JsonResult() { Data = new AddCharacterResponse(false, errorMsg) };

            return new JsonResult() { Data = new AddCharacterResponse(true, "") };
        }