@model SceneEditViewModel @{ var status = Model.RevisionStatuses.FirstOrDefault(x => x.Value == Model.RevisionStatusID.ToString())?.Text ?? "Not set"; var pov = Model.CharacterOptions.FirstOrDefault(x => x.Value == Model.POVCharacterID?.ToString())?.Text ?? Model.SceneCharacters.FirstOrDefault(x => x.RoleInSceneTypeName?.Contains("POV", StringComparison.OrdinalIgnoreCase) == true)?.CharacterName ?? "No POV"; var wordCount = Model.Workflow.ActualWordCount ?? Model.Workflow.EstimatedWordCount ?? 0; var locationCount = new[] { Model.PrimaryLocationID }.Where(x => x.HasValue).Select(x => x!.Value) .Concat(Model.SceneCharacters.Where(x => x.LocationID.HasValue).Select(x => x.LocationID!.Value)) .Concat(Model.SceneAssetLocations.Select(x => x.LocationID)) .Distinct() .Count(); var warningCount = Model.Warnings.Count + Model.AgeContinuityWarnings.Count; }
Status @status
POV @pov
Words @wordCount.ToString("N0")
Characters @Model.SceneCharacters.Count
Assets @Model.AssetEvents.Select(x => x.StoryAssetID).Distinct().Count()
Locations @locationCount
Warnings @warningCount