@using Tessitura.Service.Client.Templates @using System.Collections.Generic; @using System.Linq; @{ var renderTicketElementsTable = false; // For debugging only! foreach (var ticket in Model.Elements.Tickets) { var ticketElements = ticket.TicketElements; var webPerformanceDescription = Model.GetTicketElementValue(ticket.TicketElements, DesignElements.Ticket.Performance.WebPerformanceDescription); var performanceDate = Model.GetTicketElementValue(ticketElements, DesignElements.Ticket.Performance.PerformanceDate); var performanceBeginTime = Model.GetTicketElementValue(ticketElements, DesignElements.Ticket.Performance.PerformanceBeginTime); var theatre = @Model.GetTicketElementValue(ticketElements, DesignElements.Ticket.Seat.Theatre); var sectionDescription = Model.GetTicketElementValue(ticketElements, DesignElements.Ticket.Seat.SectionDescription); var seatRow = Model.GetTicketElementValue(ticketElements, DesignElements.Ticket.Seat.SeatRow); var seatNumber = Model.GetTicketElementValue(ticket.TicketElements, DesignElements.Ticket.Seat.SeatNumber); var nScanNumber = Model.GetTicketElementValue(ticket.TicketElements, DesignElements.Ticket.Seat.NScanNumber); var priceTypeAlias = Model.GetTicketElementValue(ticket.TicketElements, DesignElements.Ticket.Seat.PriceTypeAlias); var priceZoneDescription = Model.GetTicketElementValue(ticket.TicketElements, DesignElements.Ticket.Seat.PriceZoneDescription); var orderNumber = Model.GetTicketElementValue(ticket.TicketElements, DesignElements.Ticket.Order.OrderNumber); var ticketNumber = Model.GetTicketElementValue(ticket.TicketElements, DesignElements.Ticket.Seat.TicketNumber);
@if (renderTicketElementsTable) { @foreach (var el in ticket.TicketElements) { }
Available Ticket Design Elements
Name Value
@el.Description
@el.Val
}
@webPerformanceDescription
@if (theatre != "") {
@theatre
} @if (performanceDate != "" || performanceBeginTime != "") { @if (performanceDate != "") { } @if (performanceBeginTime != "") { }
Here's my custom data field: @Model.GetTicketElementValue(ticket.TicketElements, DesignElements.Ticket.UserDefined.UserDefinedElement3)
Date @performanceDate
Time @performanceBeginTime
}
@Raw(Model.GetQRCode(@nScanNumber, 8, "#000000"))
@{ var seatRowLabelPieces = new List(); if (seatRow != "") { seatRowLabelPieces.Add("Row " + seatRow); } if (seatNumber != "") { seatRowLabelPieces.Add("Seat " + seatNumber); } var labels = new List { sectionDescription, priceZoneDescription, string.Join(", ", seatRowLabelPieces), priceTypeAlias }.FindAll(s => s != ""); } @if (labels.Count() > 0) {
@foreach (var label in labels) { }
@label
} @{ var details = new Dictionary() { { "Order Number", @orderNumber }, { "Ticket Number", @ticketNumber }, }.Where(d => d.Value != "").ToList(); } @if (details.Count() > 0) { @{ for (var i = 0; i < details.Count(); i++) { var style = i == 0 ? "padding: 10px 5px 2px;" : "padding: 10px 5px 2px; border-left: 1px solid #CCC;"; } } @{ for (var i = 0; i < details.Count(); i++) { var style = i == 0 ? "padding: 2px 5px 10px; font-weight: normal;" : "padding: 2px 5px 10px; font-weight: normal; border-left: 1px solid #CCC;"; } }
@details[i].Key
@details[i].Value
}
} }