private async Task <RepoSettingsViewModel> GetRepoSettingsViewModel(string ownerId, string repoId) { if (string.IsNullOrEmpty(ownerId)) { throw new ArgumentNullException(); } if (string.IsNullOrEmpty(repoId)) { throw new ArgumentNullException(); } try { var rs = await _repoSettingsStore.GetRepoSettingsAsync(ownerId, repoId); var rsvm = new RepoSettingsViewModel(rs); return(rsvm); } catch (RepoSettingsNotFoundException) { Log.Debug("No repo settings found for repo '{0}/{1}'", ownerId, repoId); return(new RepoSettingsViewModel { OwnerId = ownerId, RepoId = repoId }); } catch (Exception e) { Log.Error(e, "Error retrieving owner settings with owner id '{0}'", ownerId); throw; } }
private void RepoSettingsButtonClick(object sender, RoutedEventArgs e) { RepoSettingsViewModel dataContext = RepoSettingsPage.DataContext as RepoSettingsViewModel; dataContext.DatabaseSolutionPath = ConfigurationManager.AppSettings["DatabaseSolutionPath"]; //((RepoSettingsViewModel)page.DataContext).DatabaseSolutionPath //CurrentMenuStackPanel = EditScriptMenuStackPanel; PageFrame.Navigate(RepoSettingsPage); }
public async Task <IActionResult> Settings(string ownerId, string repoId, RepoSettingsViewModel settingsViewModel) { if (ModelState.IsValid) { try { settingsViewModel.LastModified = DateTime.UtcNow; settingsViewModel.LastModifiedBy = User.Identity.Name; if (!ownerId.Equals(User.Identity.Name)) { settingsViewModel.OwnerIsOrg = true; } var repoSettings = settingsViewModel.AsRepoSettings(); await _repoSettingsStore.CreateOrUpdateRepoSettingsAsync(repoSettings); ViewBag.StatusMessage = GetSettingsStatusMessage(ManageMessageId.ChangeSettingSuccess); TempData["ModelState"] = null; } catch (Exception e) { ViewBag.StatusMessage = GetSettingsStatusMessage(ManageMessageId.Error); Log.Error(e, "Error updating repo settings for '{0}/{1}'", ownerId, repoId); throw; } } else { // pass errors to the ViewComponent ViewBag.StatusMessage = GetSettingsStatusMessage(ManageMessageId.ValidationError); TempData["ModelState"] = ModelState; TempData["ViewModel"] = settingsViewModel; } DashboardViewModel.Area = "settings"; DashboardViewModel.Title = string.Format("{0} Settings", DashboardViewModel.SelectedOwnerId, DashboardViewModel.SelectedRepoId); return(View("Settings", DashboardViewModel)); }