Пример #1
0
        public async Task <ActionResult> Revert(Guid id, bool confirm)
        {
            var editVm = await _changes.GetChangesetDetailsAsync(id);

            if (!editVm.CanRevert)
            {
                throw new OperationException("Эта правка не может быть отменена");
            }

            var vm = await _changes.GetReverseEditorStateAsync(id);

            if (vm is MediaEditorVM mvm)
            {
                await _media.UpdateAsync(mvm, User, id);
            }
            else if (vm is PageEditorVM pvm)
            {
                await _pages.UpdateAsync(pvm, User, id);
            }
            else if (vm is RelationEditorVM rvm)
            {
                await _rels.UpdateAsync(rvm, User, id);
            }

            await _db.SaveChangesAsync();

            return(RedirectToSuccess("Правка была отменена"));
        }
Пример #2
0
        public async Task <ActionResult> Revert(Guid id, bool confirm)
        {
            var vm = await _changes.GetReverseEditorStateAsync(id);

            if (vm is MediaEditorVM mvm)
            {
                await _media.UpdateAsync(mvm, User, id);
            }
            else if (vm is PageEditorVM pvm)
            {
                await _pages.UpdateAsync(pvm, User, id);
            }
            else if (vm is RelationEditorVM rvm)
            {
                await _rels.UpdateAsync(rvm, User, id);
            }

            await _db.SaveChangesAsync();

            return(RedirectToSuccess("Правка была отменена"));
        }