- Abstracted the XML-HTML Parser into a neat little state machine

- Added Settings classes for all things XML-HTML conversion
This commit is contained in:
schnulller
2022-05-19 22:34:49 +02:00
parent 2ed7265869
commit d054cf07e1
25 changed files with 1276 additions and 725 deletions

View File

@@ -54,9 +54,13 @@ public class Briefecontroller : Controller
// Model creation
var model = new BriefeViewModel(this.id, index, generateMetaViewModel(meta));
if (nextmeta != null) model.Next = generateMetaViewModel(nextmeta);
if (prevmeta != null) model.Prev = generateMetaViewModel(prevmeta);
if (nextmeta != null) model.Next = (generateMetaViewModel(nextmeta), url + nextmeta.Autopsic);
if (prevmeta != null) model.Prev = (generateMetaViewModel(prevmeta), url + prevmeta.Autopsic);
if (hands != null && hands.Any()) model.ParsedHands = HaWeb.HTMLHelpers.BriefeHelpers.CreateHands(_lib, hands);
if (editreasons != null && editreasons.Any()) model.ParsedEdits = HaWeb.HTMLHelpers.BriefeHelpers.CreateEdits(_lib, _readerService, editreasons);
if (tradition != null && !String.IsNullOrWhiteSpace(tradition.Element)) model.ParsedTradition = HaWeb.HTMLHelpers.BriefeHelpers.CreateTraditions(_lib, _readerService, marginals, tradition);
if (text != null && !String.IsNullOrWhiteSpace(text.Element))
(model.ParsedLineCount, model.ParsedText, model.ParsedMarginals) = HaWeb.HTMLHelpers.BriefeHelpers.CreateLetter(_lib, _readerService, meta, text, marginals);
// Return
return View(model);
@@ -72,7 +76,8 @@ public class Briefecontroller : Controller
{
var senders = meta.Senders.Select(x => _lib.Persons[x].Name) ?? new List<string>();
var recivers = meta.Receivers.Select(x => _lib.Persons[x].Name) ?? new List<string>();
return new BriefeMetaViewModel(meta) {
return new BriefeMetaViewModel(meta)
{
ParsedSenders = HTMLHelpers.StringHelpers.GetEnumerationString(senders),
ParsedReceivers = HTMLHelpers.StringHelpers.GetEnumerationString(recivers)
};