private static string CompareEditionVisitors(IList <EditionVisitorEntity> currentEditionVisitors, IList <EditionVisitorEntity> updatedEditionVisitors)
        {
            var diffs = new List <Variance>();

            if (currentEditionVisitors == null || currentEditionVisitors.Count == 0)
            {
                currentEditionVisitors = CreateEmptyEditionVisitorsForComparison(updatedEditionVisitors);
            }

            foreach (var currentEditionVisitor in currentEditionVisitors)
            {
                var editionVisitor = updatedEditionVisitors.SingleOrDefault(x =>
                                                                            x.EditionId == currentEditionVisitor.EditionId &&
                                                                            x.DayNumber == currentEditionVisitor.DayNumber);
                if (editionVisitor != null)
                {
                    var diff = currentEditionVisitor.Compare(editionVisitor);
                    diffs.AddRange(diff);
                }
            }

            var updateInfo     = new HtmlUpdateInfo("EditionVisitor", diffs, true);
            var updatedContent = updateInfo.ComposeContent();

            return(updatedContent);
        }
        public static string GetUpdatedContent(FileEntity current, FileEntity updated)
        {
            var diff = current.Compare(updated);

            diff = PrepareDiff(diff);
            var updateInfo     = new HtmlUpdateInfo("File", diff, true);
            var updatedContent = updateInfo.ComposeContent();

            return(updatedContent);
        }
        public static string GetUpdatedContent(EditionTranslationEntity current, EditionTranslationEntity updated)
        {
            var diff = current.Compare(updated);

            diff = PrepareDiff(diff);
            var updateInfo     = new HtmlUpdateInfo("EditionTranslation", diff, true);
            var updatedContent = updateInfo.ComposeContent();

            return(updatedContent);
        }