Example #1
0
        public ActionResult ManageRepo(string repoName, RepoSettings settings)
        {
            var resourceInfo = this.FileManager.GetResourceInfo(repoName);

            if (resourceInfo.Type != ResourceType.Directory)
            {
                return(HttpNotFound());
            }

            var repo = GitUtilities.GetRepoInfo(resourceInfo.FullPath);

            if (!repo.IsGitRepo)
            {
                return(HttpNotFound());
            }

            if (!ModelState.IsValid)
            {
                return(View(settings));
            }

            io::File.WriteAllText(Path.Combine(resourceInfo.FullPath, "description"), settings.Description);
            if (repo.IsArchived != settings.IsArchived)
            {
                GitUtilities.ToggleArchived(resourceInfo.FullPath);
            }

            return(RedirectToAction("ViewRepo", "Browse", new { repo = repoName }));
        }