TourIAm/TIAMSharedUI/Pages/Index.razor

184 lines
8.6 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

@page "/"
@using AyCode.Interfaces.StorageHandlers;
@using BlazorAnimation
@using TIAMSharedUI.Shared.Components
@using TIAMSharedUI.Shared.Components.BaseComponents
@using TIAMWebApp.Shared.Application.Interfaces
@using TIAMWebApp.Shared.Application.Models
@using TIAMWebApp.Shared.Application.Models.ClientSide.UI
@using AyCode.Services.Loggers
@using TIAMSharedUI.Pages.Components;
@using TIAMSharedUI.Shared
@using TIAM.Resources;
@using TIAMWebApp.Shared.Application.Models.ClientSide.UI.WizardModels
@inherits BasePageComponent
@inject NavigationManager NavManager
@inject IUserDataService UserDataService;
@inject IJSRuntime jsRuntime;
@inject ISecureStorageHandler SecureStorageHandler
@inject ISessionService sessionService;
@inject IStringLocalizer<TIAMResources> localizer;
@inject NavigationManager navManager
@inject IAcLogWriterClientBase BrowserConsoleLogWriter
@inject IWizardProcessor WizardProcessor
<PageTitle>Index</PageTitle>
<AuthComponent />
<HeroSlider SliderItems="@sliders" PBottom="50px" Height="70vh"></HeroSlider>
@* <div class="container-fluid" style="position: relative; z-index: 2;">
<div class="row d-flex justify-content-center">
<div class="col-12 col-lg-6">
<div class="card bg-white p-3">
<InputWizard Data=@myModel
OnSubmit="SubmitForm"
IgnoreReflection="@TransferIgnorList"
SubmitButtonText="ButtonSend"
TitleResourceString="TransferTitle"
SubtitleResourceString="TransferSubtitle"></InputWizard>
</div>
</div>
</div>
</div> *@
@* <div class="container-fluid" style="align-content: center;">
<div class="text-center">
<h1>@localizer.GetString("Index.Title")</h1>
<h2>@localizer.GetString("Index.Subtitle")</h2>
</div>
</div> *@
<section class="py-5 bg-light">
<div class="container">
<div class="row align-items-center">
<!-- Text Content -->
<div class="col-md-6">
<h2>@localizer.GetString("Index.WhoWeAre")</h2>
<p>Were not here to take over your trip. Were here to help shape it — with smooth rides, flexible options, and curated experiences you can actually enjoy.</p>
<p>Think of us as your private ride — whether youre heading to the airport, a spa town, a winery, or somewhere off the map.</p>
<p>You can follow one of our signature routes, or create your own. We adapt. You decide. We take care of the road.</p>
<p>Our role changes with every guest. Sometimes were your calm in the chaos. Sometimes were your quiet local expert. Sometimes were just there — when you need someone who knows the way.</p>
</div>
<!-- Image Placeholder -->
<div class="col-md-6 text-center">
<img src="https://images.unsplash.com/photo-1563461660947-507ef49e9c47?q=80&w=1974&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D" alt="Who we are" class="img-fluid rounded shadow">
</div>
</div>
</div>
</section>
<section class="py-5 bg-gradient">
<ToursComponent />
</section>
<section class="py-5">
<BlogComponent />
</section>
<CallToActionComponent></CallToActionComponent>
<script>
$(".custom-carousel").owlCarousel({
autoWidth: true,
loop: true
});
$(document).ready(function () {
$(".custom-carousel .item").click(function () {
$(".custom-carousel .item").not($(this)).removeClass("active");
$(this).toggleClass("active");
});
});
</script>
@code {
public List<HeroSliderItem> sliders = new List<HeroSliderItem>
{
new HeroSliderItem
{
Title = "Experience Hungary on Your Terms",
Subtitle = "Discover the freedom of personalized travel with expert private transfers and curated inspiration.",
ImageUrl = "https://images.unsplash.com/photo-1551867633-194f125bddfa?auto=format&fit=crop&q=80&w=2070&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D",
ButtonText = "Explore Our Programs",
ButtonUrl= "/signature-ride-packages"
},
new HeroSliderItem
{
Title = "Experience Hungary on Your Terms",
Subtitle = "Discover the freedom of personalized travel with expert private transfers and curated inspiration.",
ImageUrl = "https://images.unsplash.com/photo-1549877452-9c387954fbc2?auto=format&fit=crop&q=80&w=2070&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D",
ButtonText = "Book now",
ButtonUrl= "/transfer"
},
new HeroSliderItem
{
Title = "Experience Hungary on Your Terms",
Subtitle = "",
ImageUrl = "https://images.unsplash.com/photo-1507622560124-621e26755fb8?auto=format&fit=crop&q=80&w=2070&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D",
ButtonText = "",
ButtonUrl= ""
}
};
public TransferWizardModel myModel = new TransferWizardModel();
public List<string> TransferIgnorList = new List<string>
{
"Id",
"UserId",
"ProductId",
"PaymentId",
"FirstName",
"LastName",
"UserProductMappingId",
"UserProductToCarId",
"ReferralId",
"Price",
"Revenue"
};
/*protected override void OnAfterRender(bool isFirst)
{
message = " Target destination is " + slider.SliderElementId.ToString();
}*/
public async Task SubmitForm(object Result)
{
TransferWizardModel transferWizardModel = Result as TransferWizardModel;
if (sessionService.IsAuthenticated)
{
transferWizardModel.UserId = sessionService.User.UserModelDto.Id;
transferWizardModel.ProductId = sessionService.User.UserModelDto.Products.FirstOrDefault().Id;
}
transferWizardModel.Price = null;
var transfer = await WizardProcessor.ProcessWizardAsync<TransferWizardModel>(transferWizardModel.GetType(), transferWizardModel);
BrowserConsoleLogWriter.Info($"Submitted nested form: {Result.GetType().FullName}");
navManager.NavigateTo("/transfer2/" + transfer.Id);
}
public List<Event> MockEvents = new List<Event>
{
new Event("HONEYBEAST", "A Honeybeast egyedisége abban rejlik, hogy a popzenét rengeteg különféle irányból közelítik meg - hol vidám, hol szomorú, hol pörgős, hogy lassú, koncertjükön az érzelmek széles skáláját élhetjük át együtt.", "2024.05.03", "Budapest Park", "https://tixa.hu/kepek/0027/320/27870-1_20231214141702.jpg"),
new Event("VAD FRUTTIK", "A kék a tenger és az ég színe, a nyílt terekkel, valamint a képzelettel és tágassággal társul - végtelen kékség május 3-án a Budapest Parkban!", "2024.04.26", "Budapest Park", "https://tixa.hu/kepek/0027/768/27692-1_20231129185842.jpg"),
new Event("DEBORAH DE LUCA", "DEBORAH DE LUCA 2024-ben Magyarországon csak a Budapest Park színpadán", "2024.08.19", "Budapest Park", "https://tixa.hu/kepek/0028/768/28535-1_20240118172423.jpg"),
new Event("TOTAL DANCE CABRIO", "Ha nyár, akkor Total Dance Cabrio! Ülj be mellénk a cabrioba, és hagyd, hogy visszarepítsünk a 90-es és 2000-es évekbe! ", "2024.04.26", "Budapest Park", "https://tixa.hu/kepek/0027/768/27829-1_20231206193253.jpg"),
new Event("HONEYBEAST", "A Honeybeast egyedisége abban rejlik, hogy a popzenét rengeteg különféle irányból közelítik meg - hol vidám, hol szomorú, hol pörgős, hogy lassú, koncertjükön az érzelmek széles skáláját élhetjük át együtt.", "2024.05.03", "Budapest Park", "https://tixa.hu/kepek/0027/320/27870-1_20231214141702.jpg"),
new Event("VAD FRUTTIK", "A kék a tenger és az ég színe, a nyílt terekkel, valamint a képzelettel és tágassággal társul - végtelen kékség május 3-án a Budapest Parkban!", "2024.04.26", "Budapest Park", "https://tixa.hu/kepek/0027/768/27692-1_20231129185842.jpg"),
new Event("DEBORAH DE LUCA", "DEBORAH DE LUCA 2024-ben Magyarországon csak a Budapest Park színpadán", "2024.08.19", "Budapest Park", "https://tixa.hu/kepek/0028/768/28535-1_20240118172423.jpg"),
new Event("TOTAL DANCE CABRIO", "Ha nyár, akkor Total Dance Cabrio! Ülj be mellénk a cabrioba, és hagyd, hogy visszarepítsünk a 90-es és 2000-es évekbe! ", "2024.04.26", "Budapest Park", "https://tixa.hu/kepek/0027/768/27829-1_20231206193253.jpg"),
};
}