public async Task <IActionResult> OnPostScriptActionsUpdateAsync(ScriptActionsEdit action) { if (ModelState.IsValid) { switch (action.Action) { case "Create": _context.ScriptActions.Add(action.ScriptAction); break; case "Edit": _context.ScriptActions.Update(action.ScriptAction); break; case "Delete": _context.ScriptActions.Remove(action.ScriptAction); break; } try { await _context.SaveChangesAsync(); } catch (Exception ex) { //CreateNotification(ex.Message); } } return(await GetScriptActionsModalAsync(action)); }
public async Task <PartialViewResult> OnGetScriptActionsEdit(int?id) { ScriptActionsEdit action = new ScriptActionsEdit { Scriptaction = await _context.ScriptActions.Where(s => s.ScriptActionId == id).FirstOrDefaultAsync() }; action.AvailablecodesSL = (from c in _context.Codes where c.Category == "VoiceAction" && ( (!_context.ScriptActions.Any(sa => c.Code == sa.ActionCode && sa.ScriptId == action.Scriptaction.ScriptId)) || c.Code == action.Scriptaction.ActionCode // get current selection ) select new SelectListItem { Value = c.Code, Text = c.Label }).ToList(); action.AvailableresponsesSL = (from c in _context.Codes where c.Category == "Keypad" && ((!_context.ScriptActions.Any(sa => c.Code == sa.Response && sa.ScriptId == action.Scriptaction.ScriptId)) || c.Code == action.Scriptaction.Response) // get current selection select new SelectListItem { Value = c.Code, Text = c.Label }).ToList(); return(new PartialViewResult { ViewName = @".\Scripts\ScriptActionsEditModalPartial", ViewData = new ViewDataDictionary <ScriptActionsEdit>(ViewData, action) }); }
public async Task <PartialViewResult> OnGetScriptActionsDelete(int id) { ScriptActionsEdit action = new ScriptActionsEdit { ScriptAction = await _context.ScriptActions.FirstOrDefaultAsync(sa => sa.ScriptActionId == id), Action = "Delete" }; return(await GetScriptActionsModalAsync(action)); }
private async Task <PartialViewResult> GetScriptActionsModalAsync(ScriptActionsEdit action) { action = await GetSelectionListsAsync(action); return(new PartialViewResult { ViewName = @".\Scripts\ScriptActions\ScriptActionsModal", ViewData = new ViewDataDictionary <ScriptActionsEdit>(ViewData, action) }); }
public async Task <PartialViewResult> OnGetScriptActionsCreate(int id) { ScriptActionsEdit action = new ScriptActionsEdit { ScriptAction = new Models.ScriptActions { ScriptId = id }, Action = "Create" }; return(await GetScriptActionsModalAsync(action)); }
public async Task <IActionResult> OnPostScriptActionsEdit(ScriptActionsEdit action) { if (ModelState.IsValid) { _context.ScriptActions.Update(action.Scriptaction); await _context.SaveChangesAsync(); } return(new PartialViewResult { ViewName = @".\Scripts\ScriptActionsEditModalPartial", ViewData = new ViewDataDictionary <ScriptActionsEdit>(ViewData, action) }); }
private async Task <ScriptActionsEdit> GetSelectionListsAsync(ScriptActionsEdit action) { switch (HttpContext.Session.GetString("DeliveryTypeCode")) { case "V": action.AvailableCodesSL = await(from c in _context.Codes where c.Category == "VoiceAction" && ( (!_context.ScriptActions.Any(sa => c.Code == sa.ActionCode && sa.ScriptId == action.ScriptAction.ScriptId)) || c.Code == action.ScriptAction.ActionCode // get current selection ) select new SelectListItem { Value = c.Code, Text = c.Label }).ToListAsync(); action.AvailableResponsesSL = await(from c in _context.Codes where c.Category == "Keypad" && ((!_context.ScriptActions.Any(sa => c.Code == sa.Response && sa.ScriptId == action.ScriptAction.ScriptId)) || c.Code == action.ScriptAction.Response) // get current selection select new SelectListItem { Value = c.Code, Text = c.Label }).ToListAsync(); break; case "T": action.AvailableCodesSL = await(from c in _context.Codes where c.Category == "SmsAction" && ( (!_context.ScriptActions.Any(sa => c.Code == sa.ActionCode && sa.ScriptId == action.ScriptAction.ScriptId)) || c.Code == action.ScriptAction.ActionCode // get current selection ) select new SelectListItem { Value = c.Code, Text = c.Label }).ToListAsync(); break; } return(action); }