public ActionResult ImportConfiguration() { CA_Backup_Model modelclass = new CA_Backup_Model(CABackupFrontend.MvcApplication.Connectionstring); modelclass.UpdateConfigSettings(); return(RedirectToAction("Setting", "Settings")); }
public ActionResult SaveOverrideValidation(CABackupFrontend.Controllers.SettingsViewModel inputdata) { CA_Backup_Model modelclass = new CA_Backup_Model(CABackupFrontend.MvcApplication.Connectionstring); modelclass.UpdateValidationSettings(inputdata.validationsettings); return(RedirectToAction("Setting", "Settings")); }
public async Task <ActionResult> RestorePolicy(string partitionkey, string rowkey) { string upn = Request.Headers["X-MS-CLIENT-PRINCIPAL-NAME"]; CA_Backup_Model modelclass = new CA_Backup_Model(CABackupFrontend.MvcApplication.Connectionstring); await modelclass.Restoretoexistingpolicy(partitionkey, rowkey, upn); return(View("Backups")); }
public ActionResult BackupRestore(string rowkey, string partitionkey) { CA_Backup_Model model = new CA_Backup_Model(CABackupFrontend.MvcApplication.Connectionstring); List <listcabackupdetails> backupdetail = model.GetBackupDetails(partitionkey, rowkey); if (backupdetail.Count > 0) { string backupdate = backupdetail[0].BackupDate; string backuptype = backupdetail[0].PartitionKey; JObject backupdetails = new JObject(); if (partitionkey == "CABackupChanges") { backupdetails = JObject.Parse(backupdetail[0].CAOldValue); } else if (partitionkey == "CABackupDaily") { backupdetails = JObject.Parse(backupdetail[0].CABackup); } ViewBag.PartitionKey = partitionkey; ViewBag.RowKey = backupdetail[0].RowKey; ViewBag.RestorePolicyID = (string)backupdetails["id"]; ViewBag.RestorePolicyname = (string)backupdetails["displayName"]; ViewBag.RestorePolicystate = (string)backupdetails["state"]; try { ViewBag.RestoreJSONConditions = (JValue.Parse(backupdetails["conditions"].ToString()).ToString(Formatting.Indented)).ToString(); } catch (Exception) { ViewBag.RestoreJSONConditions = "nothing defined"; } try { ViewBag.RestoreJSONGrantControls = (JValue.Parse(backupdetails["grantControls"].ToString()).ToString(Formatting.Indented)).ToString(); } catch (Exception) { ViewBag.RestoreJSONGrantControls = "nothing defined"; } try { ViewBag.RestoreJSONSessionControls = (JValue.Parse(backupdetails["sessionControls"].ToString()).ToString(Formatting.Indented)).ToString(); } catch (Exception) { ViewBag.RestoreJSONSessionControls = "nothing defined"; } } return(View()); }
// GET: Settings public ActionResult Setting() { CA_Backup_Model modelclass = new CA_Backup_Model(CABackupFrontend.MvcApplication.Connectionstring); SettingsViewModel viewmodel = new SettingsViewModel(); viewmodel.validationsettings = modelclass.GetValidationSettings(); viewmodel.importconfigurationsettings = modelclass.GetConfigurationVersion(); return(View(viewmodel)); }
public ActionResult SaveNewTranslation(listcabackuptranslation NewTranslationSettings) { if (ModelState.IsValid) { CA_Backup_Model modelclass = new CA_Backup_Model(CABackupFrontend.MvcApplication.Connectionstring); NewTranslationSettings.PartitionKey = NewTranslationSettings.Function + ":" + NewTranslationSettings.Setting; modelclass.AddNewTranslationSetting(NewTranslationSettings); return(RedirectToAction("Setting", "Settings")); } return(View("NewTranslation")); }
public ActionResult TranslationDelete(string partitionkey, string rowkey) { CA_Backup_Model modelclass = new CA_Backup_Model(CABackupFrontend.MvcApplication.Connectionstring); listcabackuptranslation removeentrylist = new listcabackuptranslation(); removeentrylist.RowKey = rowkey; removeentrylist.PartitionKey = partitionkey; removeentrylist.ETag = "*"; modelclass.RemoveTranslationSetting(removeentrylist); return(RedirectToAction("Setting", "Settings")); }
public static void RegisterGrids() { // ################################################################################################################# // # // # GridView for Conditional Access backups // # // ################################################################################################################# MVCGridDefinitionTable.Add("CABackups", new MVCGridBuilder <listcabackupconfig>() .WithAuthorizationType(AuthorizationType.AllowAnonymous) .AddColumns(cols => { cols.Add("Id").WithValueExpression(p => p.RowKey.ToString()).WithVisibility(false); cols.Add("BackupType").WithHeaderText("Type") .WithFiltering(true) .WithValueExpression(p => p.PartitionKey); cols.Add("Policy").WithHeaderText("Policy") .WithFiltering(true) .WithValueExpression(p => p.Policy); cols.Add("BackupDate").WithHeaderText("Date") .WithValueExpression(p => p.BackupDate); cols.Add("Details").WithHtmlEncoding(false) .WithSorting(false) .WithHeaderText(" ") .WithValueExpression((p, c) => c.UrlHelper.Action("BackupDetails", "Backups", new { rowkey = p.RowKey, partitionkey = p.PartitionKey })) .WithValueTemplate("<a href='{Value}' class='btn btn-info' role='button'>Details</a>"); cols.Add("Restore").WithHtmlEncoding(false) .WithSorting(false) .WithFiltering(true) .WithHeaderText(" ") .WithValueExpression((p, c) => Convert.ToBoolean(p.BackupRestoreing) ? "btn-light disabled" : "btn-warning") .WithValueTemplate("<a href='BackupRestore?rowkey={Model.RowKey}&partitionkey={Model.PartitionKey}' class='btn {Value}' role='button'>Restore</a>"); }) .WithFiltering(true) .WithPaging(true, 7) .WithRetrieveDataMethod((context) => { var result = new QueryResult <listcabackupconfig>(); CA_Backup_Model backuplist = new CA_Backup_Model(CABackupFrontend.MvcApplication.Connectionstring); var options = context.QueryOptions; var deffilterbackuptype = options.GetFilterString("BackupType"); var deffilterpolicy = options.GetFilterString("Policy"); IEnumerable <listcabackupconfig> filteredbackup; if (deffilterbackuptype != null && deffilterpolicy != null) { filteredbackup = backuplist.GetBackups() .Where(o => (o.PartitionKey == deffilterbackuptype) && (o.Policy.ToLower().Contains(deffilterpolicy.ToLower()))).AsQueryable(); } else if (deffilterbackuptype != null) { filteredbackup = backuplist.GetBackups() .Where(o => (o.PartitionKey == deffilterbackuptype)).AsQueryable(); } else if (deffilterpolicy != null) { filteredbackup = backuplist.GetBackups() .Where(o => (o.Policy.ToLower().Contains(deffilterpolicy.ToLower()))).AsQueryable(); } else { filteredbackup = backuplist.GetBackups().AsQueryable(); } result.TotalRecords = filteredbackup.Count(); if (options.GetLimitOffset().HasValue) { filteredbackup = filteredbackup.Skip(options.GetLimitOffset().Value).Take(options.GetLimitRowcount().Value); } result.Items = filteredbackup.ToList(); return(result); }) ); // ################################################################################################################# // # // # GridView for backup translation settings // # // ################################################################################################################# MVCGridDefinitionTable.Add("CABackupsTranslation", new MVCGridBuilder <listcabackuptranslation>() .WithAuthorizationType(AuthorizationType.AllowAnonymous) .AddColumns(cols => { cols.Add("PartitionKey").WithValueExpression(p => p.PartitionKey.ToString()).WithVisibility(false); cols.Add("Section").WithHeaderText("Section") .WithValueExpression(p => p.Section); cols.Add("Function").WithHeaderText("Function") .WithValueExpression(p => p.Function); cols.Add("Setting").WithHeaderText("Setting") .WithValueExpression(p => p.Setting); cols.Add("Value").WithHeaderText("Value") .WithValueExpression(p => p.RowKey); cols.Add("Translation").WithHeaderText("Translation") .WithValueExpression(p => p.Translation); cols.Add("Delete").WithHtmlEncoding(false) .WithSorting(false) .WithHeaderText(" ") .WithValueExpression((p, c) => c.UrlHelper.Action("TranslationDelete", "Settings", new { rowkey = p.RowKey, partitionkey = p.PartitionKey })) .WithValueTemplate("<a href='{Value}' class='btn btn-warning' role='button'>Delete</a>"); }) .WithFiltering(true) .WithPaging(true, 5) .WithRetrieveDataMethod((context) => { var result = new QueryResult <listcabackuptranslation>(); CA_Backup_Model backuptranslationlist = new CA_Backup_Model(CABackupFrontend.MvcApplication.Connectionstring); var options = context.QueryOptions; IEnumerable <listcabackuptranslation> filteredbackup; filteredbackup = backuptranslationlist.GetBackupTranslations().AsQueryable(); result.TotalRecords = filteredbackup.Count(); if (options.GetLimitOffset().HasValue) { filteredbackup = filteredbackup.Skip(options.GetLimitOffset().Value).Take(options.GetLimitRowcount().Value); } result.Items = filteredbackup.ToList(); return(result); }) ); }