public virtual ActionResult QuestState(int Id, int QuestId, int ParentStateId) { IQuestRepository repo = new EFQuestRepository(); var questState = repo.QuestStates.FirstOrDefault(q => q.Id == Id); if (questState == null) { questState = new QuestState { QuestEndId = -1, Text = "", QuestId = QuestId, QuestStateName = "[ state name ]", QuestEnds = new List <QuestEnd>(), QuestConnectionRequirements = new List <QuestConnectionRequirement>(), QuestStatePreactions = new List <QuestStatePreaction>(), X = 0, Y = 0, PinToDiagram = true }; } var output = new QuestStateFormViewModel(); output.QuestState = questState; output.QuestConnectionsTo = repo.QuestConnections.Where(q => q.QuestStateToId == output.QuestState.Id && q.QuestStateToId > 0); output.QuestConnectionsFailTo = repo.QuestConnections.Where(q => q.QuestStateFailToId == output.QuestState.Id && q.QuestStateFailToId > 0); output.QuestConnectionsFrom = repo.QuestConnections.Where(q => q.QuestStateFromId == output.QuestState.Id && q.QuestStateFromId > 0); return(PartialView(MVC.QuestWriter.Views.QuestState, output)); }
public virtual ActionResult QuestStateSend(QuestStateFormViewModel input) { var id = QuestWriterProcedures.SaveQuestState(input.QuestState); QuestWriterProcedures.LogQuestWriterAction(User.Identity.Name, input.QuestState.QuestId, " saved quest state Id <b>" + input.QuestState.Id + "</b>."); return(RedirectToAction(MVC.QuestWriter.QuestState(id, input.QuestState.QuestId, -1))); }