This commit is contained in:
RDeck 2025-05-30 03:35:54 -04:00
parent 8490ef0185
commit 90ec402c8f
7 changed files with 566 additions and 414 deletions

Binary file not shown.

View File

@ -2,9 +2,29 @@
"Version": 1,
"WorkspaceRootPath": "C:\\Repos\\SummerBestWebForm2\\",
"Documents": [
{
"AbsoluteMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|c:\\repos\\summerbestwebform2\\components\\pages\\test.razor||{40D31677-CBC0-4297-A9EF-89D907823A98}",
"RelativeMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|solutionrelative:components\\pages\\test.razor||{40D31677-CBC0-4297-A9EF-89D907823A98}"
},
{
"AbsoluteMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|c:\\repos\\summerbestwebform2\\components\\pages\\home.razor||{40D31677-CBC0-4297-A9EF-89D907823A98}",
"RelativeMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|solutionrelative:components\\pages\\home.razor||{40D31677-CBC0-4297-A9EF-89D907823A98}"
},
{
"AbsoluteMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|c:\\repos\\summerbestwebform2\\components\\pages\\weather.razor||{40D31677-CBC0-4297-A9EF-89D907823A98}",
"RelativeMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|solutionrelative:components\\pages\\weather.razor||{40D31677-CBC0-4297-A9EF-89D907823A98}"
},
{
"AbsoluteMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|c:\\repos\\summerbestwebform2\\components\\app.razor||{40D31677-CBC0-4297-A9EF-89D907823A98}",
"RelativeMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|solutionrelative:components\\app.razor||{40D31677-CBC0-4297-A9EF-89D907823A98}"
},
{
"AbsoluteMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|c:\\repos\\summerbestwebform2\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|solutionrelative:program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|c:\\repos\\summerbestwebform2\\components\\pages\\home.razor.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|solutionrelative:components\\pages\\home.razor.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
@ -14,7 +34,7 @@
"DocumentGroups": [
{
"DockedWidth": 200,
"SelectedChildIndex": 11,
"SelectedChildIndex": 16,
"Children": [
{
"$type": "Bookmark",
@ -62,15 +82,80 @@
},
{
"$type": "Document",
"DocumentIndex": 0,
"DocumentIndex": 3,
"Title": "App.razor",
"DocumentMoniker": "C:\\Repos\\SummerBestWebForm2\\Components\\App.razor",
"RelativeDocumentMoniker": "Components\\App.razor",
"ToolTip": "C:\\Repos\\SummerBestWebForm2\\Components\\App.razor",
"RelativeToolTip": "Components\\App.razor",
"ViewState": "AgIAAC0AAAAAAAAAAAAAAAAAAAAHAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|",
"WhenOpened": "2025-05-29T18:24:38.258Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 5,
"Title": "Home.razor.cs",
"DocumentMoniker": "C:\\Repos\\SummerBestWebForm2\\Components\\Pages\\Home.razor.cs",
"RelativeDocumentMoniker": "Components\\Pages\\Home.razor.cs",
"ToolTip": "C:\\Repos\\SummerBestWebForm2\\Components\\Pages\\Home.razor.cs",
"RelativeToolTip": "Components\\Pages\\Home.razor.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-29T18:24:42.784Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
"Title": "Home.razor",
"DocumentMoniker": "C:\\Repos\\SummerBestWebForm2\\Components\\Pages\\Home.razor",
"RelativeDocumentMoniker": "Components\\Pages\\Home.razor",
"ToolTip": "C:\\Repos\\SummerBestWebForm2\\Components\\Pages\\Home.razor",
"RelativeToolTip": "Components\\Pages\\Home.razor",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|",
"WhenOpened": "2025-05-29T18:25:48.345Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 4,
"Title": "Program.cs",
"DocumentMoniker": "C:\\Repos\\SummerBestWebForm2\\Program.cs",
"RelativeDocumentMoniker": "Program.cs",
"ToolTip": "C:\\Repos\\SummerBestWebForm2\\Program.cs",
"RelativeToolTip": "Program.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAEAAAAiAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-29T18:26:18.113Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 2,
"Title": "Weather.razor",
"DocumentMoniker": "C:\\Repos\\SummerBestWebForm2\\Components\\Pages\\Weather.razor",
"RelativeDocumentMoniker": "Components\\Pages\\Weather.razor",
"ToolTip": "C:\\Repos\\SummerBestWebForm2\\Components\\Pages\\Weather.razor",
"RelativeToolTip": "Components\\Pages\\Weather.razor",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABQAAAAgAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|",
"WhenOpened": "2025-05-29T18:28:11.235Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "Test.razor",
"DocumentMoniker": "C:\\Repos\\SummerBestWebForm2\\Components\\Pages\\Test.razor",
"RelativeDocumentMoniker": "Components\\Pages\\Test.razor",
"ToolTip": "C:\\Repos\\SummerBestWebForm2\\Components\\Pages\\Test.razor",
"RelativeToolTip": "Components\\Pages\\Test.razor",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|",
"WhenOpened": "2025-05-29T17:56:48.283Z",
"WhenOpened": "2025-05-29T18:28:44.014Z",
"EditorCaption": ""
}
]

View File

@ -5,6 +5,22 @@
{
"AbsoluteMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|c:\\repos\\summerbestwebform2\\components\\pages\\home.razor||{40D31677-CBC0-4297-A9EF-89D907823A98}",
"RelativeMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|solutionrelative:components\\pages\\home.razor||{40D31677-CBC0-4297-A9EF-89D907823A98}"
},
{
"AbsoluteMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|c:\\repos\\summerbestwebform2\\components\\pages\\weather.razor||{40D31677-CBC0-4297-A9EF-89D907823A98}",
"RelativeMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|solutionrelative:components\\pages\\weather.razor||{40D31677-CBC0-4297-A9EF-89D907823A98}"
},
{
"AbsoluteMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|c:\\repos\\summerbestwebform2\\components\\app.razor||{40D31677-CBC0-4297-A9EF-89D907823A98}",
"RelativeMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|solutionrelative:components\\app.razor||{40D31677-CBC0-4297-A9EF-89D907823A98}"
},
{
"AbsoluteMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|c:\\repos\\summerbestwebform2\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|solutionrelative:program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|c:\\repos\\summerbestwebform2\\components\\pages\\home.razor.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{10E16044-8880-42A4-866B-B0461C450A71}|SummerBestWebForm2.csproj|solutionrelative:components\\pages\\home.razor.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
@ -14,7 +30,7 @@
"DocumentGroups": [
{
"DockedWidth": 200,
"SelectedChildIndex": 11,
"SelectedChildIndex": 13,
"Children": [
{
"$type": "Bookmark",
@ -60,6 +76,32 @@
"$type": "Bookmark",
"Name": "ST:0:0:{aa2115a1-9712-457b-9047-dbb71ca2cdd2}"
},
{
"$type": "Document",
"DocumentIndex": 2,
"Title": "App.razor",
"DocumentMoniker": "C:\\Repos\\SummerBestWebForm2\\Components\\App.razor",
"RelativeDocumentMoniker": "Components\\App.razor",
"ToolTip": "C:\\Repos\\SummerBestWebForm2\\Components\\App.razor",
"RelativeToolTip": "Components\\App.razor",
"ViewState": "AgIAAC0AAAAAAAAAAAAAAAAAAAAHAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|",
"WhenOpened": "2025-05-29T18:24:38.258Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 4,
"Title": "Home.razor.cs",
"DocumentMoniker": "C:\\Repos\\SummerBestWebForm2\\Components\\Pages\\Home.razor.cs",
"RelativeDocumentMoniker": "Components\\Pages\\Home.razor.cs",
"ToolTip": "C:\\Repos\\SummerBestWebForm2\\Components\\Pages\\Home.razor.cs",
"RelativeToolTip": "Components\\Pages\\Home.razor.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-29T18:24:42.784Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 0,
@ -68,9 +110,35 @@
"RelativeDocumentMoniker": "Components\\Pages\\Home.razor",
"ToolTip": "C:\\Repos\\SummerBestWebForm2\\Components\\Pages\\Home.razor",
"RelativeToolTip": "Components\\Pages\\Home.razor",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|",
"WhenOpened": "2025-05-29T17:56:48.283Z",
"WhenOpened": "2025-05-29T18:25:48.345Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 3,
"Title": "Program.cs",
"DocumentMoniker": "C:\\Repos\\SummerBestWebForm2\\Program.cs",
"RelativeDocumentMoniker": "Program.cs",
"ToolTip": "C:\\Repos\\SummerBestWebForm2\\Program.cs",
"RelativeToolTip": "Program.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAEAAAAiAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-29T18:26:18.113Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
"Title": "Weather.razor",
"DocumentMoniker": "C:\\Repos\\SummerBestWebForm2\\Components\\Pages\\Weather.razor",
"RelativeDocumentMoniker": "Components\\Pages\\Weather.razor",
"ToolTip": "C:\\Repos\\SummerBestWebForm2\\Components\\Pages\\Weather.razor",
"RelativeToolTip": "Components\\Pages\\Weather.razor",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABQAAAAgAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000759|",
"WhenOpened": "2025-05-29T18:28:11.235Z",
"EditorCaption": ""
}
]

View File

@ -1,5 +1,4 @@
@inject IHttpContextAccessor httpContextAccessor
<!DOCTYPE html>
<!DOCTYPE html>
<html lang="en">
<head>
@ -26,8 +25,8 @@
<link rel="icon" type="image/png" sizes="32x32" href="/img/favico-32.png">
<style type="text/css">
div.container {
background-color: #fff;
min-height: 100vh;
background-color: #fff;
min-height: 100vh;
}
</style>
<HeadOutlet @rendermode="@(new InteractiveServerRenderMode(false))" />
@ -43,53 +42,52 @@
<script src="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/js/all.min.js" integrity="sha512-u3fPA7V8qQmhBPNT5quvaXVa1mnnLSXUep5PS1qo5NRzHwG19aHmNJnj1Q8hpA/nBWZtZD4r4AX6YOt5ynLN2g==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script>
window.WriteCookie = {
WriteCookie: function (name, value, days) {
var expires;
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
expires = "; expires=" + date.toGMTString();
}
else {
expires = "";
}
document.cookie = name + "=" + value + expires + "; path=/";
}
WriteCookie: function (name, value, days) {
var expires;
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
expires = "; expires=" + date.toGMTString();
}
else {
expires = "";
}
document.cookie = name + "=" + value + expires + "; path=/";
}
}
window.ReadCookie = {
ReadCookie: function (cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
ReadCookie: function (cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
}
</script>
<pre>@errMsg</pre>
@if (appState != null)
{
<pre style="font-size:.8em">
SessionId: @appState.SessionId
DateCreated: @appState.DateCreated
DateExpires: @appState.DateExpires
IPAddress: @appState.myIpAddress
</pre>
}
<pre>@errMsg</pre>
@if (appState != null)
{
<pre style="font-size:.8em">
SessionId: @appState.SessionId
DateCreated: @appState.DateCreated
DateExpires: @appState.DateExpires
IPAddress: @appState.myIpAddress
</pre>
}
</body>
</html>
@code {
[CascadingParameter]
public CascadingAppState appState { get; set; }
private string errMsg = string.Empty;
}

View File

@ -1,178 +1,178 @@
@inject IHttpContextAccessor httpContextAccessor
@inject IWebHostEnvironment Env
@rendermode InteractiveServer
@inject PersistentComponentState ApplicationState
@page "/"
<PageTitle>Welcome</PageTitle>
@if (ShowWizard)
{
<div class="container">
<div class="row">
<div class="col-12">
<TelerikWizard @bind-Value="@Value" OnFinish="OnFinishHandler" Width="100%" Height="95vh" Class="sbWizard" StepperPosition=WizardStepperPosition.Top>
<WizardSteps>
<WizardStep Label="Introduction" Icon="@SvgIcon.Globe" OnChange="@OnAudienceChoiceStepChange" Valid="@IsAudienceChoiceValid">
<Content>
<TelerikForm Model="@cardType" @ref="@IntroForm">
<FormItems>
<FormItem>
<Template>
<div class="container">
<div class="row">
<div class="col-12 px-sm-5 mb-2">
<h1>KeyMotive's Summer Growth Program</h1>
<div class="px-sm-5 mb-2">
<p>It's time for our Summer Growth Program!<br />If you're looking to kick off your summer season with a wildly successful campgaign, then you've come to the right place!</p>
<p>
Using this wizard, choose your target audience, decide what media you'd like to mail, choose from a few suggested designs (or request a custom design from our
creative team), and that's it!
</p>
<p>Let us handle the rest!</p>
</div>
<div>
<img src="/img/7ccdfcc7-f91b-497e-8c19-ebb3a4021ea3.png" class="img-fluid" />
</div>
<div class="px-sm-5 mb-2 text-start">
Your audience choices are:
<ul>
<li>A list of your <strong class="text-primary">Very Best Customers</strong> (always a heavy-hitting campaign!)</li>
<li>
A list composed of <strong class="text-primary">Great Prospects</strong> near your shop, as well as a mix of formerly-Great Customers that you
<strong class="text-primary">haven't seen during the past 8 months</strong>.
</li>
</ul>
</div>
<div class="px-sm-5 text-start">
<strong>Please Select:</strong>
<TelerikRadioGroup Data="@audiences"
@bind-Value="@audienceType"
ValueField="@nameof(AudienceType.AudienceDescription)"
TextField="@nameof(AudienceType.AudienceDescription)">
</TelerikRadioGroup>
</div>
<div class="container">
<div class="row">
<div class="col-12">
<TelerikWizard @bind-Value="@Value" OnFinish="OnFinishHandler" Width="100%" Height="95vh" Class="sbWizard" StepperPosition=WizardStepperPosition.Top>
<WizardSteps>
<WizardStep Label="Introduction" Icon="@SvgIcon.Globe" OnChange="@OnAudienceChoiceStepChange" Valid="@IsAudienceChoiceValid">
<Content>
<TelerikForm Model="@cardType" @ref="@IntroForm">
<FormItems>
<FormItem>
<Template>
<div class="container">
<div class="row">
<div class="col-12 px-sm-5 mb-2">
<h1>KeyMotive's Summer Growth Program</h1>
<div class="px-sm-5 mb-2">
<p>It's time for our Summer Growth Program!<br />If you're looking to kick off your summer season with a wildly successful campgaign, then you've come to the right place!</p>
<p>
Using this wizard, choose your target audience, decide what media you'd like to mail, choose from a few suggested designs (or request a custom design from our
creative team), and that's it!
</p>
<p>Let us handle the rest!</p>
</div>
<div>
<img src="/img/7ccdfcc7-f91b-497e-8c19-ebb3a4021ea3.png" class="img-fluid" />
</div>
<div class="px-sm-5 mb-2 text-start">
Your audience choices are:
<ul>
<li>A list of your <strong class="text-primary">Very Best Customers</strong> (always a heavy-hitting campaign!)</li>
<li>
A list composed of <strong class="text-primary">Great Prospects</strong> near your shop, as well as a mix of formerly-Great Customers that you
<strong class="text-primary">haven't seen during the past 8 months</strong>.
</li>
</ul>
</div>
<div class="px-sm-5 text-start">
<strong>Please Select:</strong>
<TelerikRadioGroup Data="@audiences"
@bind-Value="@audienceType"
ValueField="@nameof(AudienceType.AudienceDescription)"
TextField="@nameof(AudienceType.AudienceDescription)">
</TelerikRadioGroup>
</div>
</div>
</div>
</Template>
</FormItem>
</FormItems>
<FormButtons>
</div>
</Template>
</FormItem>
</FormItems>
<FormButtons>
@* Need this here to avoid addition of random submit button *@
</FormButtons>
</TelerikForm>
</Content>
</WizardStep>
</FormButtons>
</TelerikForm>
</Content>
</WizardStep>
@* *@
@* Step 1 - plastic card vs postcard *@
@* *@
<WizardStep Label="Card Type" Icon="@SvgIcon.EnvelopeBox" OnChange="@OnCardChoiceStepChange" Valid="@IsCardChoiceValid">
<Content>
<TelerikForm Model="@cardType" @ref="@cardTypeForm">
<FormItems>
<FormItem>
<Template>
<div class="container">
<div class="row">
<div class="col-12">
<h1 class="text-center">Step 1 - Choose a Card Type</h1>
</div>
<div class="col-12 text-center mb-3">
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Single">
<ButtonGroupToggleButton @bind-Selected="@isPlasticCard">Plastic Card</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@isPostcard">Postcard</ButtonGroupToggleButton>
</TelerikButtonGroup>
</div>
<WizardStep Label="Card Type" Icon="@SvgIcon.EnvelopeBox" OnChange="@OnCardChoiceStepChange" Valid="@IsCardChoiceValid">
<Content>
<TelerikForm Model="@cardType" @ref="@cardTypeForm">
<FormItems>
<FormItem>
<Template>
<div class="container">
<div class="row">
<div class="col-12">
<h1 class="text-center">Step 1 - Choose a Card Type</h1>
</div>
<div class="col-12 text-center mb-3">
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Single">
<ButtonGroupToggleButton @bind-Selected="@isPlasticCard">Plastic Card</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@isPostcard">Postcard</ButtonGroupToggleButton>
</TelerikButtonGroup>
</div>
@* Preview information about the selected card type*@
@if (isPlasticCard)
{
<div class="col-sm-4 mb-3 text-start">
<h4>Very Popular Plastic Card Mailer!</h4>
<ul>
<li>As thick as a typical credit card!</li>
<li>Large size piece (8&frac14; x 4 inches)</li>
<li>Coupons pop out, offering great convenience for your customers!</li>
<li>Leave it to us - we select, print, sort and mail for just <strong class="text-primary text-nowrap">$1.02 each</strong></li>
</ul>
</div>
<div class="col-sm-8 text-center mb-3">
<img class="img-fluid" src="/img/1181c4aa-4f3f-4eb4-8d5d-7eff0131d5f2.png" />
</div>
<div class="col-sm-4 mb-3 text-start">
<h4>Very Popular Plastic Card Mailer!</h4>
<ul>
<li>As thick as a typical credit card!</li>
<li>Large size piece (8&frac14; x 4 inches)</li>
<li>Coupons pop out, offering great convenience for your customers!</li>
<li>Leave it to us - we select, print, sort and mail for just <strong class="text-primary text-nowrap">$1.02 each</strong></li>
</ul>
</div>
<div class="col-sm-8 text-center mb-3">
<img class="img-fluid" src="/img/1181c4aa-4f3f-4eb4-8d5d-7eff0131d5f2.png" />
</div>
}
else
{
<div class="col-sm-4 mb-3 text-start">
<h4>Premium Postcard Really Stands Out in the Mailbox</h4>
<ul>
<li>Premium paper, Jumbo-Sized (8&frac12; x 6 inches)</li>
<li>UV gloss-coated</li>
<li>Choose from our selection, or ask for a custom design!</li>
<li>Full service - select, print, sort, mail for just <strong class="text-primary text-nowrap">79&#162; each</strong></li>
</ul>
</div>
<div class="col-sm-8 text-center mb-3">
<img class="img-fluid" src="/img/ad5a2b69-a493-429b-9edd-8320ec1e9c33.png" />
</div>
<div class="col-sm-4 mb-3 text-start">
<h4>Premium Postcard Really Stands Out in the Mailbox</h4>
<ul>
<li>Premium paper, Jumbo-Sized (8&frac12; x 6 inches)</li>
<li>UV gloss-coated</li>
<li>Choose from our selection, or ask for a custom design!</li>
<li>Full service - select, print, sort, mail for just <strong class="text-primary text-nowrap">79&#162; each</strong></li>
</ul>
</div>
<div class="col-sm-8 text-center mb-3">
<img class="img-fluid" src="/img/ad5a2b69-a493-429b-9edd-8320ec1e9c33.png" />
</div>
}
</div>
</div>
</Template>
</FormItem>
</FormItems>
<FormButtons>
</div>
</Template>
</FormItem>
</FormItems>
<FormButtons>
@* Need this here to avoid addition of random submit button *@
</FormButtons>
</TelerikForm>
</Content>
</WizardStep>
</FormButtons>
</TelerikForm>
</Content>
</WizardStep>
@* *@
@* Step 2 - selecting card design *@
@* *@
<WizardStep Label="Card Design" Icon="@SvgIcon.MapMarkerTarget" OnChange="@OnDesignStepChange" Valid="@IsDesignChoiceValid">
<Content>
<TelerikForm Model="@custOptions" @ref="@customizationForm">
<FormValidation>
<DataAnnotationsValidator></DataAnnotationsValidator>
</FormValidation>
<FormItems>
<FormItem>
<Template>
<div class="container">
<div class="row">
<div class="col-12">
<h1 class="text-center">Choose a Design</h1>
</div>
<div class="col-12 text-center mb-3">
<WizardStep Label="Card Design" Icon="@SvgIcon.MapMarkerTarget" OnChange="@OnDesignStepChange" Valid="@IsDesignChoiceValid">
<Content>
<TelerikForm Model="@custOptions" @ref="@customizationForm">
<FormValidation>
<DataAnnotationsValidator></DataAnnotationsValidator>
</FormValidation>
<FormItems>
<FormItem>
<Template>
<div class="container">
<div class="row">
<div class="col-12">
<h1 class="text-center">Choose a Design</h1>
</div>
<div class="col-12 text-center mb-3">
@* Button logic *@
<div class="text-center">
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Single">
<div class="text-center">
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Single">
@if (isPlasticCard)
{
<ButtonGroupToggleButton @bind-Selected="@designOne">Plastic Card 1</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@designTwo">Plastic Card 2</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@designThree">Plastic Card 3</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@designCustom">Custom Design</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@designOne">Plastic Card 1</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@designTwo">Plastic Card 2</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@designThree">Plastic Card 3</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@designCustom">Custom Design</ButtonGroupToggleButton>
}
else
{
<ButtonGroupToggleButton @bind-Selected="@designOne">Postcard 1</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@designTwo">Postcard 2</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@designThree">Postcard 3</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@designCustom">Custom Design</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@designOne">Postcard 1</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@designTwo">Postcard 2</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@designThree">Postcard 3</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@designCustom">Custom Design</ButtonGroupToggleButton>
}
</TelerikButtonGroup>
<br /><br />
</TelerikButtonGroup>
<br /><br />
@* Card preview logic *@
@if (designOne)
{
@if (isPostcard)
{
<img src="/img/Postcard1_Front.png" class="img-fluid" alt="Back" />
<img src="/img/Postcard1_Back.png" class="img-fluid" alt="Front" />
<img src="/img/Postcard1_Front.png" class="img-fluid" alt="Back" />
<img src="/img/Postcard1_Back.png" class="img-fluid" alt="Front" />
}
else
{
<img src="/img/Plastic1_Back.png" class="img-fluid" alt="Back" />
<img src="/img/Plastic1_Front.png" class="img-fluid" alt="Front" />
<img src="/img/Plastic1_Back.png" class="img-fluid" alt="Back" />
<img src="/img/Plastic1_Front.png" class="img-fluid" alt="Front" />
}
}
@ -180,290 +180,291 @@
{
@if (isPostcard)
{
<img src="/img/Postcard2_Front.png" class="img-fluid" alt="Back" />
<img src="/img/Postcard2_Back.png" class="img-fluid" alt="Front" />
<img src="/img/Postcard2_Front.png" class="img-fluid" alt="Back" />
<img src="/img/Postcard2_Back.png" class="img-fluid" alt="Front" />
}
else
{
<img src="/img/Plastic2_Back.png" class="img-fluid" alt="Back" />
<img src="/img/Plastic2_Front.png" class="img-fluid" alt="Front" />
<img src="/img/Plastic2_Back.png" class="img-fluid" alt="Back" />
<img src="/img/Plastic2_Front.png" class="img-fluid" alt="Front" />
}
}
else if (designThree)
{
@if (isPostcard)
{
<img src="/img/Postcard3_Front.png" class="img-fluid" alt="Back" />
<img src="/img/Postcard3_Back.png" class="img-fluid" alt="Front" />
<img src="/img/Postcard3_Front.png" class="img-fluid" alt="Back" />
<img src="/img/Postcard3_Back.png" class="img-fluid" alt="Front" />
}
else
{
<img src="/img/Plastic3_Back.png" class="img-fluid" alt="Back" />
<img src="/img/Plastic3_Front.png" class="img-fluid" alt="Front" />
<img src="/img/Plastic3_Back.png" class="img-fluid" alt="Back" />
<img src="/img/Plastic3_Front.png" class="img-fluid" alt="Front" />
}
}
else if (designCustom)
{
<div class="d-sm-flex justify-content-around">
<div class="px-5">
<h4 class="mb-5">If you have your own idea in mind, or you would like to try another design, our creative design team will make it happen!</h4>
</div>
<div class="px-5">
<p class="fst-italic">When you're asked for "additional comments," just give us an idea of what you have in mind and our customer care team will have some ideas
ready when we call you!
</p>
</div>
</div>
<div>
<div class="d-sm-flex justify-content-around">
<div class="px-5">
<h4 class="mb-5">If you have your own idea in mind, or you would like to try another design, our creative design team will make it happen!</h4>
</div>
<div class="px-5">
<p class="fst-italic">
When you're asked for "additional comments," just give us an idea of what you have in mind and our customer care team will have some ideas
ready when we call you!
</p>
</div>
</div>
<div>
@if (isPostcard)
{
<img src="/img/cfeb51c5-5373-44b5-be19-dadea452cc41.png" class="img-fluid" />
<img src="/img/cfeb51c5-5373-44b5-be19-dadea452cc41.png" class="img-fluid" />
}
else
{
<img src="/img/a41f648d-6b39-41f1-bbe5-084fb8a71a30.png" class="img-fluid" />
<img src="/img/a41f648d-6b39-41f1-bbe5-084fb8a71a30.png" class="img-fluid" />
}
</div>
</div>
}
</div>
</div>
</div>
</div>
</Template>
</FormItem>
</FormItems>
<FormButtons />
</TelerikForm>
</Content>
</WizardStep>
</div>
</Template>
</FormItem>
</FormItems>
<FormButtons />
</TelerikForm>
</Content>
</WizardStep>
@* *@
@* Step 3 - For postcards, choose a verse and a signature *@
@* *@
<WizardStep Label="Customization" OnChange="@OnMessagingStepChange" Valid="@isMessagingValid">
<Content>
<TelerikForm Model="@messagingOptions" @ref="@messagingForm">
<FormItems>
<FormItem>
<Template>
<div class="container">
<div class="row">
<WizardStep Label="Customization" OnChange="@OnMessagingStepChange" Valid="@isMessagingValid">
<Content>
<TelerikForm Model="@messagingOptions" @ref="@messagingForm">
<FormItems>
<FormItem>
<Template>
<div class="container">
<div class="row">
@if (isPlasticCard)
{
<div class="col-12">
<h4>No customization needed. Please proceed to logo selection.</h4>
</div>
<div class="col-12">
<h4>No customization needed. Please proceed to logo selection.</h4>
</div>
}
else
{
<div class="col-12">
<h4 class="mb-3">Please Select a Verse</h4>
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Single" Class="vertical-buttons block-buttons mb-5">
<ButtonGroupToggleButton @bind-Selected="@verseOne">Option 1</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@verseTwo">Option 2</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@verseThree">Option 3</ButtonGroupToggleButton>
</TelerikButtonGroup>
<div class="col-12">
<h4 class="mb-3">Please Select a Verse</h4>
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Single" Class="vertical-buttons block-buttons mb-5">
<ButtonGroupToggleButton @bind-Selected="@verseOne">Option 1</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@verseTwo">Option 2</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@verseThree">Option 3</ButtonGroupToggleButton>
</TelerikButtonGroup>
@if (verseOne)
{
<p class="fst-italic">Thank you for making our success possible.</p>
<p class="fst-italic">We appreciate loyal customers like you and look forward to continuing to be your complete auto repair, service and tire center!</p>
<p class="fst-italic">Thank you for making our success possible.</p>
<p class="fst-italic">We appreciate loyal customers like you and look forward to continuing to be your complete auto repair, service and tire center!</p>
}
else if (verseTwo)
{
<p class="fst-italic">We appreciate the trust you have shown in us and look forward to working with you in the future!</p>
<p class="fst-italic">We appreciate the trust you have shown in us and look forward to working with you in the future!</p>
}
else if (verseThree)
{
<p class="fst-italic">We want you to know that we truly appreciate your business and will make every effort possible to continue to provide you with excellent car care.</p>
<p class="fst-italic">We want you to know that we truly appreciate your business and will make every effort possible to continue to provide you with excellent car care.</p>
}
</div>
<div class="col-12">
<hr class="m-5" />
<h4 class="mb-3">Please Select a Signature</h4>
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Single" Class="mb-5">
<ButtonGroupToggleButton @bind-Selected="@sigOne">From Your Friends</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@sigTwo">Name, Title, Phone Number</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@sigThree">Custom</ButtonGroupToggleButton>
</TelerikButtonGroup>
</div>
<div class="col-12">
<hr class="m-5" />
<h4 class="mb-3">Please Select a Signature</h4>
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Single" Class="mb-5">
<ButtonGroupToggleButton @bind-Selected="@sigOne">From Your Friends</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@sigTwo">Name, Title, Phone Number</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@sigThree">Custom</ButtonGroupToggleButton>
</TelerikButtonGroup>
@if (sigOne)
{
<p>From your friends at <strong>TopSpeed Tire</strong><br /><i>(your location name)</i></p>
<p><strong>(888) 555-3712</strong><br /><i>(your location phone number)</i></p>
<p>From your friends at <strong>TopSpeed Tire</strong><br /><i>(your location name)</i></p>
<p><strong>(888) 555-3712</strong><br /><i>(your location phone number)</i></p>
}
else if (sigTwo)
{
<label style="display:block" for="CustomName" class="k-label k-form-label text-center">Name:</label>
<TelerikTextBox Class="mb-3" Id="CustomName" @bind-Value="@customName" MaxLength="50" Width="25rem"></TelerikTextBox>
<label style="display:block" for="CustomTitle" class="k-label k-form-label text-center">Title:</label>
<TelerikTextBox Class="mb-3" Id="CustomTitle" @bind-Value="@customTitle" MaxLength="50" Width="25rem"></TelerikTextBox>
<label style="display:block" for="CustomPhone" class="k-label k-form-label text-center">Phone:</label>
<TelerikTextBox Class="mb-3" Id="CustomPhone" @bind-Value="@customPhone" MaxLength="15" Width="20rem"></TelerikTextBox>
<label style="display:block" for="CustomName" class="k-label k-form-label text-center">Name:</label>
<TelerikTextBox Class="mb-3" Id="CustomName" @bind-Value="@customName" MaxLength="50" Width="25rem"></TelerikTextBox>
<label style="display:block" for="CustomTitle" class="k-label k-form-label text-center">Title:</label>
<TelerikTextBox Class="mb-3" Id="CustomTitle" @bind-Value="@customTitle" MaxLength="50" Width="25rem"></TelerikTextBox>
<label style="display:block" for="CustomPhone" class="k-label k-form-label text-center">Phone:</label>
<TelerikTextBox Class="mb-3" Id="CustomPhone" @bind-Value="@customPhone" MaxLength="15" Width="20rem"></TelerikTextBox>
}
else if (sigThree)
{
<br />
<label style="display:block" for="CustomSignature" class="text-center">Custom Message (max 30 character/line up to 4 lines)</label>
<br />
<label style="display:block" for="CustomSignature" class="text-center">Custom Message (max 30 character/line up to 4 lines)</label>
<br />
<TelerikTextArea Id="CustomSignature" @bind-Value="@customSignature" Rows="4" Cols="35" MaxLength="120"></TelerikTextArea>
<br />
<TelerikTextArea Id="CustomSignature" @bind-Value="@customSignature" Rows="4" Cols="35" MaxLength="120"></TelerikTextArea>
}
</div>
}
<div class="col-12 text-center mb-3">
</div>
}
<div class="col-12 text-center mb-3">
</div>
</div>
</Template>
</FormItem>
</FormItems>
<FormButtons />
</TelerikForm>
</Content>
</WizardStep>
</div>
</Template>
</FormItem>
</FormItems>
<FormButtons />
</TelerikForm>
</Content>
</WizardStep>
@* *@
@* Step 4 - Logo Selection *@
@* *@
<WizardStep Label="Logos" OnChange="@OnLogoStepChange" Valid="@isLogoValid">
<Content>
<TelerikForm Model="@logoOptions"
@ref="@logoForm">
<FormItems>
<FormItem>
<Template>
<div class="container">
<div class="row">
<div class="col-12">
<TelerikCheckBox Id="goodyearBox" @bind-Value="@goodyear" />
<label for="goodyearBox">Goodyear Logo</label>
<TelerikCheckBox Id="michelinBox" @bind-Value="@michelin" />
<label for="michelinBox">Michelin Logo</label>
<TelerikCheckBox Id="customBox" @bind-Value="@custom" />
<label for="customBox">Custom Logo</label>
</div>
<div class="col-12 mt-5">
<WizardStep Label="Logos" OnChange="@OnLogoStepChange" Valid="@isLogoValid">
<Content>
<TelerikForm Model="@logoOptions"
@ref="@logoForm">
<FormItems>
<FormItem>
<Template>
<div class="container">
<div class="row">
<div class="col-12">
<TelerikCheckBox Id="goodyearBox" @bind-Value="@goodyear" />
<label for="goodyearBox">Goodyear Logo</label>
<TelerikCheckBox Id="michelinBox" @bind-Value="@michelin" />
<label for="michelinBox">Michelin Logo</label>
<TelerikCheckBox Id="customBox" @bind-Value="@custom" />
<label for="customBox">Custom Logo</label>
</div>
<div class="col-12 mt-5">
@if (goodyear)
{
<div class="p-5">
<img src="/img/goodyear.png" class="img-fluid" />
</div>
<div class="p-5">
<img src="/img/goodyear.png" class="img-fluid" />
</div>
}
@if (michelin)
{
<div class="p-5">
<img src="/img/michelin.png" class="img-fluid" />
</div>
<div class="p-5">
<img src="/img/michelin.png" class="img-fluid" />
</div>
}
@if (custom)
{
<div class="p-5">
<img src="/img/6784cef1-9ed9-4c91-94bc-5e7a267b5a4f.png" class="img-fluid" />
</div>
<div class="p-5">
<img src="/img/6784cef1-9ed9-4c91-94bc-5e7a267b5a4f.png" class="img-fluid" />
</div>
}
</div>
</div>
</div>
</Template>
</FormItem>
</FormItems>
<FormButtons>
</FormButtons>
</TelerikForm>
</Content>
</WizardStep>
</div>
</Template>
</FormItem>
</FormItems>
<FormButtons>
</FormButtons>
</TelerikForm>
</Content>
</WizardStep>
@* *@
@* Step 5 - Offer selection for Plastic cards *@
@* *@
<WizardStep Label="Offers" OnChange="@OnOfferStepChange" Valid="@isOfferSelectionValid">
<Content>
<TelerikForm Model="@offerOptions" @ref="@offerForm">
<FormItems>
<FormItem>
<Template>
<div class="container">
<div class="row">
<WizardStep Label="Offers" OnChange="@OnOfferStepChange" Valid="@isOfferSelectionValid">
<Content>
<TelerikForm Model="@offerOptions" @ref="@offerForm">
<FormItems>
<FormItem>
<Template>
<div class="container">
<div class="row">
@if (isPlasticCard)
{
<div class="col-12">
<h4 class="my-3">Please select two (2) full size offers:</h4>
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Multiple">
<ButtonGroupToggleButton @bind-Selected="@bigOffers[0]"><img src="/img/A1.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@bigOffers[1]"><img src="/img/A2.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@bigOffers[2]"><img src="/img/A3.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@bigOffers[3]"><img src="/img/A4.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@bigOffers[4]"><img src="/img/A5.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@bigOffers[5]"><img src="/img/A6.png" /></ButtonGroupToggleButton>
</TelerikButtonGroup>
</div>
<div class="col-12">
<h4 class="my-3">And four (4) half-sized offers:</h4>
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Multiple">
<ButtonGroupToggleButton @bind-Selected="@smallOffers[0]"><img src="/img/B1.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[1]"><img src="/img/B2.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[2]"><img src="/img/B3.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[3]"><img src="/img/B4.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[4]"><img src="/img/B5.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[5]"><img src="/img/B6.png" /></ButtonGroupToggleButton>
</TelerikButtonGroup>
<br />
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Multiple">
<ButtonGroupToggleButton @bind-Selected="@smallOffers[6]"><img src="/img/B7.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[7]"><img src="/img/B8.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[8]"><img src="/img/B9.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[9]"><img src="/img/B10.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[10]"><img src="/img/B11.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[11]"><img src="/img/B12.png" /></ButtonGroupToggleButton>
</TelerikButtonGroup>
</div>
<div class="col-12">
<h4 class="my-3">Please select two (2) full size offers:</h4>
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Multiple">
<ButtonGroupToggleButton @bind-Selected="@bigOffers[0]"><img src="/img/A1.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@bigOffers[1]"><img src="/img/A2.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@bigOffers[2]"><img src="/img/A3.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@bigOffers[3]"><img src="/img/A4.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@bigOffers[4]"><img src="/img/A5.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@bigOffers[5]"><img src="/img/A6.png" /></ButtonGroupToggleButton>
</TelerikButtonGroup>
</div>
<div class="col-12">
<h4 class="my-3">And four (4) half-sized offers:</h4>
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Multiple">
<ButtonGroupToggleButton @bind-Selected="@smallOffers[0]"><img src="/img/B1.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[1]"><img src="/img/B2.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[2]"><img src="/img/B3.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[3]"><img src="/img/B4.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[4]"><img src="/img/B5.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[5]"><img src="/img/B6.png" /></ButtonGroupToggleButton>
</TelerikButtonGroup>
<br />
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Multiple">
<ButtonGroupToggleButton @bind-Selected="@smallOffers[6]"><img src="/img/B7.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[7]"><img src="/img/B8.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[8]"><img src="/img/B9.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[9]"><img src="/img/B10.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[10]"><img src="/img/B11.png" /></ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@smallOffers[11]"><img src="/img/B12.png" /></ButtonGroupToggleButton>
</TelerikButtonGroup>
</div>
}
else
{
<div class="col-12 m-5">
<h4>No offers needed! Please proceed to the next step!</h4>
</div>
<div class="col-12 m-5">
<h4>No offers needed! Please proceed to the next step!</h4>
</div>
}
</div>
</div>
</Template>
</FormItem>
</FormItems>
<FormButtons />
</TelerikForm>
</Content>
</WizardStep>
</div>
</Template>
</FormItem>
</FormItems>
<FormButtons />
</TelerikForm>
</Content>
</WizardStep>
@* *@
@* Step 6 - Location information *@
@* *@
<WizardStep Label="Location Info" OnChange="@OnLocationStepChange" Valid="@isLocationInfoValid">
<Content>
<div class="container">
<div class="row">
<div class="col-12">
<TelerikForm Model="@locationInfo" @ref="@locationForm" Columns="2" ColumnSpacing="25px">
<FormButtons />
</TelerikForm>
</div>
<WizardStep Label="Location Info" OnChange="@OnLocationStepChange" Valid="@isLocationInfoValid">
<Content>
<div class="container">
<div class="row">
<div class="col-12">
<TelerikForm Model="@locationInfo" @ref="@locationForm" Columns="2" ColumnSpacing="25px">
<FormButtons />
</TelerikForm>
</div>
</div>
</Content>
</WizardStep>
</div>
</Content>
</WizardStep>
@* *@
@* Step 7 - Payment *@
@* *@
<WizardStep Label="Payment Info">
<Content>
<TelerikForm Model="@paymentInfo" @ref="@paymentForm">
<FormItems>
<FormItem>
<Template>
<div class="container">
<div class="row">
<div class="col-12">
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Single" Class="vertical-buttons block-buttons mb-5">
<ButtonGroupToggleButton @bind-Selected="@ccOnFile">Credit Card On File</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@callWithInfo">Call With Payment Info</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@check">Check</ButtonGroupToggleButton>
</TelerikButtonGroup>
</div>
<div class="col-12 mb-5">
<WizardStep Label="Payment Info">
<Content>
<TelerikForm Model="@paymentInfo" @ref="@paymentForm">
<FormItems>
<FormItem>
<Template>
<div class="container">
<div class="row">
<div class="col-12">
<TelerikButtonGroup SelectionMode="@ButtonGroupSelectionMode.Single" Class="vertical-buttons block-buttons mb-5">
<ButtonGroupToggleButton @bind-Selected="@ccOnFile">Credit Card On File</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@callWithInfo">Call With Payment Info</ButtonGroupToggleButton>
<ButtonGroupToggleButton @bind-Selected="@check">Check</ButtonGroupToggleButton>
</TelerikButtonGroup>
</div>
<div class="col-12 mb-5">
@if (ccOnFile)
{
<h4>Use our preferred payment method already on file.</h4>
@ -478,46 +479,46 @@
<h4>I'll be sending in a check</h4>
<p>I'll be sending in a check by the invoice's due date (6/13/2025).</p>
}
</div>
<div class="col-12">
<label style="display:block" for="RequestedQuantity" class="text-center mb-3">Requested Quantity</label>
<TelerikTextBox class="mb-3" Id="RequestedQuantity" @bind-Value="@requestedQuantity" MaxLength="6" Width="15rem"></TelerikTextBox>
<label style="display:block" for="AdditionalComments" class="text-center mb-3">Additional Notes</label>
<TelerikTextArea class="mb-3" Id="CustomSignature" @bind-Value="@additionalComments" Rows="8" Cols="100" MaxLength="2500"></TelerikTextArea>
</div>
</div>
</div>
</Template>
</FormItem>
</FormItems>
<FormButtons />
</TelerikForm>
</Content>
</WizardStep>
</WizardSteps>
</TelerikWizard>
</div>
</div>
</div>
</div>
<div class="col-12">
<label style="display:block" for="RequestedQuantity" class="text-center mb-3">Requested Quantity</label>
<TelerikTextBox class="mb-3" Id="RequestedQuantity" @bind-Value="@requestedQuantity" MaxLength="6" Width="15rem"></TelerikTextBox>
<label style="display:block" for="AdditionalComments" class="text-center mb-3">Additional Notes</label>
<TelerikTextArea class="mb-3" Id="CustomSignature" @bind-Value="@additionalComments" Rows="8" Cols="100" MaxLength="2500"></TelerikTextArea>
</div>
</div>
</div>
</Template>
</FormItem>
</FormItems>
<FormButtons />
</TelerikForm>
</Content>
</WizardStep>
</WizardSteps>
</TelerikWizard>
</div>
</div>
</div>
}
else
{
<div class="container">
<div class="row">
<div class="col-12">
Thank you!
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-12">
Thank you!
</div>
</div>
</div>
}
@if (appState != null)
{
<pre style="font-size:.8em">
SessionId: @appState.SessionId
DateCreated: @appState.DateCreated
DateExpires: @appState.DateExpires
IPAddress: @appState.myIpAddress
</pre>
SessionId: @appState.SessionId
DateCreated: @appState.DateCreated
DateExpires: @appState.DateExpires
IPAddress: @appState.myIpAddress
</pre>
}

View File

@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("SummerBestWebForm2")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+dc97ce2906f1e87b57b713d7fe4bfd808707110c")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+8490ef01857e10ece7d6fd766ad123c5a53a024f")]
[assembly: System.Reflection.AssemblyProductAttribute("SummerBestWebForm2")]
[assembly: System.Reflection.AssemblyTitleAttribute("SummerBestWebForm2")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
10584cae43a93191d973ced841fe2deabaafe42f532a43cff17861e8404c1f17
2de27890b60d31f362d1cf2d47078e797ede6fcf6283df998427d26b7d368448