public ActionResult NameAuthoritiesByGuide(ExportViewModel evm)
        {
            var resources = AsRepo.GetArchivesSpaceResources();
            var found     = resources.FirstOrDefault(x => x.title + $" ({x.ead_id})" == evm.NewAsResource);
            var asUrl     = ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id;
            var requests  = SearchNameByAsUri(asUrl);

            var csv = new StringBuilder();

            csv.AppendLine("id,authoritativeLabel,type");

            var type = string.Empty;

            foreach (var result in requests.Results.Docs)
            {
                if (result.creator != null && result.creator.Contains(asUrl))
                {
                    type = "creator";
                }
                else if (result.source != null && result.source.Contains(asUrl))
                {
                    type = "source";
                }
                //else if (result.corporateNameCreator != null && result.corporateNameCreator.Contains(asUrl)) { type = "corporateNameCreator"; }
                //else if (result.corporateNameSource != null && result.corporateNameSource.Contains(asUrl)) { type = "corporateNameSource"; }
                //else if (result.familyNameCreator != null && result.familyNameCreator.Contains(asUrl)) { type = "familyNameCreator"; }
                //else if (result.familyNameSource != null && result.familyNameSource.Contains(asUrl)) { type = "familyNameSource"; }
                csv.AppendLine($"{result._id},\"{result.authoritativeLabel}\",{type}");
            }

            System.IO.File.WriteAllText(Server.MapPath($"~/Download/{found.ead_id}NameAuths.csv"), csv.ToString(), Encoding.UTF8);
            return(Redirect($"~/Download/{found.ead_id}NameAuths.csv"));
        }
        public ActionResult Subject()
        {
            var vm = new ExportViewModel();

            var resources = AsRepo.GetArchivesSpaceResources();

            vm.AsResources = resources.Select(x => new SelectListItem
            {
                Value = $"{ConfigurationManager.AppSettings["ArchivesSpaceUrl"]}{x.id}",
                Text  = x.title + $" ({x.ead_id})"
            });

            return(View(vm));
        }
Esempio n. 3
0
        //public ActionResult Tester()
        //{
        //    var resources = AsRepo.GetArchivesSpaceResources();
        //    //var count = 0;
        //    //for (var i = 0; i < 100; i++)
        //    foreach (var guide in resources)
        //    {
        //        var subs = SearchSubjectByAsUri(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + guide.id);
        //        foreach (var sub in subs.Results.Docs)
        //        {
        //            ViewBag.Results += $"{guide.ead_id}*{sub.authoritativeLabel}*";
        //        }

        //        ViewBag.Results += "$$";
        //        //count++;
        //        //if (count == 5) break;
        //    }
        //    return View();
        //}

        public ActionResult SubjectCheck(int id)
        {
            ViewBag.ArchivesSpaceUrl = ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + id;
            var gvm       = AsRepo.GetResourceAuthorities(id);
            var resources = AsRepo.GetArchivesSpaceResources();

            gvm.Name    = SearchNameByAsUri(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + id);
            gvm.Subject = SearchSubjectByAsUri(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + id);

            var match = resources.FirstOrDefault(x => x.id == id);

            ViewBag.Guide = match.title + $" ({match.ead_id})";

            return(View(gvm));
        }
        //

        public ActionResult Subject(string id)
        {
            var avm = new AssignViewModel();

            avm.Doc = GetSubjectDocByUuid(id);

            var resources = AsRepo.GetArchivesSpaceResources();

            avm.AsResources = resources.Select(x => new SelectListItem
            {
                Value = $"{ConfigurationManager.AppSettings["ArchivesSpaceUrl"]}{x.id}",
                Text  = x.title + $" ({x.ead_id})"
            });

            return(View(avm));
        }
        public ActionResult AssignNameAsResource(AssignViewModel avm, string asButton)
        {
            asButton = Regex.Replace(asButton, @" \(...\)", "");
            var resources = AsRepo.GetArchivesSpaceResources();
            var found     = resources.FirstOrDefault(x => x.title + $" ({x.ead_id})" == avm.NewAsResource);

            if (found == null)
            {
                TempData["Message"] = "Resource Not Found";
            }
            else
            {
                var fullDoc = GetNameDocByUuid(avm.Doc._id);
                if (asButton == "Creator")
                {
                    if (fullDoc.creator == null)
                    {
                        fullDoc.creator = new List <string>();
                    }
                    fullDoc.creator.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                }
                else if (asButton == "Source")
                {
                    if (fullDoc.source == null)
                    {
                        fullDoc.source = new List <string>();
                    }
                    fullDoc.source.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                }

                //if (asButton == "PersonalNameCreator")
                //{
                //    if (fullDoc.personalNameCreator == null) { fullDoc.personalNameCreator = new List<string>(); }
                //    fullDoc.personalNameCreator.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                //}
                //else if (asButton == "PersonalNameSource")
                //{
                //    if (fullDoc.personalNameSource == null) { fullDoc.personalNameSource = new List<string>(); }
                //    fullDoc.personalNameSource.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                //}
                //else if (asButton == "FamilyNameCreator")
                //{
                //    if (fullDoc.familyNameCreator == null) { fullDoc.familyNameCreator = new List<string>(); }
                //    fullDoc.familyNameCreator.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                //}
                //else if (asButton == "FamilyNameSource")
                //{
                //    if (fullDoc.familyNameSource == null) { fullDoc.familyNameSource = new List<string>(); }
                //    fullDoc.familyNameSource.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                //}
                //else if (asButton == "CorporateNameCreator")
                //{
                //    if (fullDoc.corporateNameCreator == null) { fullDoc.corporateNameCreator = new List<string>(); }
                //    fullDoc.corporateNameCreator.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                //}
                //else if (asButton == "CorporateNameSource")
                //{
                //    if (fullDoc.corporateNameSource == null) { fullDoc.corporateNameSource = new List<string>(); }
                //    fullDoc.corporateNameSource.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                //}

                SaveNameDoc(fullDoc);
                TempData["Message"] = "Resource Added";
            }

            return(RedirectToAction("Name", new { id = avm.Doc._id }));
        }
        public ActionResult AssignSubjectAsResource(AssignViewModel avm, string asButton)
        {
            asButton = Regex.Replace(asButton, @" \(...\)", "");
            var resources = AsRepo.GetArchivesSpaceResources();
            var found     = resources.FirstOrDefault(x => x.title + $" ({x.ead_id})" == avm.NewAsResource);

            if (found == null)
            {
                TempData["Message"] = "Resource Not Found";
            }
            else
            {
                var fullDoc = GetSubjectDocByUuid(avm.Doc._id);
                if (asButton == "Assign")
                {
                    if (fullDoc.archivesSpaceRelations == null)
                    {
                        fullDoc.archivesSpaceRelations = new List <string>();
                    }
                    fullDoc.archivesSpaceRelations.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                }
                //if (asButton == "Topic")
                //{
                //    if (fullDoc.topic == null) { fullDoc.topic = new List<string>(); }
                //    fullDoc.topic.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                //}
                //else if (asButton == "Geographic")
                //{
                //    if (fullDoc.geographic == null) { fullDoc.geographic = new List<string>(); }
                //    fullDoc.geographic.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                //}
                //else if (asButton == "PersonalName")
                //{
                //    if (fullDoc.personalNameSubject == null) { fullDoc.personalNameSubject = new List<string>(); }
                //    fullDoc.personalNameSubject.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                //}
                //else if (asButton == "FamilyName")
                //{
                //    if (fullDoc.familyNameSubject == null) { fullDoc.familyNameSubject = new List<string>(); }
                //    fullDoc.familyNameSubject.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                //}
                //else if (asButton == "CorporateName")
                //{
                //    if (fullDoc.corporateNameSubject == null) { fullDoc.corporateNameSubject = new List<string>(); }
                //    fullDoc.corporateNameSubject.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                //}
                //else if (asButton == "MeetingName")
                //{
                //    if (fullDoc.meeting == null) { fullDoc.meeting = new List<string>(); }
                //    fullDoc.meeting.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                //}
                //else if (asButton == "UniformTitle")
                //{
                //    if (fullDoc.uniformTitle == null) { fullDoc.uniformTitle = new List<string>(); }
                //    fullDoc.uniformTitle.Add(ConfigurationManager.AppSettings["ArchivesSpaceUrl"] + found.id);
                //}

                SaveSubjectDoc(fullDoc);
                TempData["Message"] = "Resource Added";
            }

            return(RedirectToAction("Subject", new { id = avm.Doc._id }));
        }
Esempio n. 7
0
 public ActionResult Subject()
 {
     ViewBag.ArchivesSpaceUrl = ConfigurationManager.AppSettings["ArchivesSpaceUrl"];
     return(View(AsRepo.GetArchivesSpaceResources()));
 }