Browse Source

- Changes from roach

- checkbox to save user data
master
Flo Smilari 4 years ago
parent
commit
8cd3f452c4

+ 16
- 7
Pages/AccountPage.razor View File

@@ -61,29 +61,34 @@
<div class="row no-gutters align-items-center w-100">
<div class="col-12">
<MatTextField Class="w-100" Label="@I18n["Phone"]" Outlined="true" type="text" @bind-Value="@Account.Phone"
OnKeyDown="@InputCursorHandler.OnConstrainedFieldKeyDownHandlerAsync" maxlength="20" pattern="^([0-9]*)$"></MatTextField>
OnKeyDown="@InputCursorHandler.OnConstrainedFieldKeyDownHandlerAsync" maxlength="20" pattern="^([0-9]*)$"></MatTextField>
</div>
</div>
<div class="row no-gutters align-items-center w-100">
<div class="col-12">
<MatTextField Class="w-100" Label="@I18n["Mobile"]" Outlined="true" type="text" @bind-Value="@Account.Mobile"
OnKeyDown="@InputCursorHandler.OnConstrainedFieldKeyDownHandlerAsync" maxlength="20" pattern="^([0-9]*)$"></MatTextField>
OnKeyDown="@InputCursorHandler.OnConstrainedFieldKeyDownHandlerAsync" maxlength="20" pattern="^([0-9]*)$"></MatTextField>
</div>
</div>
<div class="row no-gutters align-items-center w-100">
<div class="col-12">
<MatStringField Class="w-100" Label="@I18n["Mail"]" Outlined="true" type="email" @bind-Value="@Account.Email" Required="true"
OnKeyDown="@InputCursorHandler.OnKeyDownHandlerAsync" maxlength="50"></MatStringField>
OnKeyDown="@InputCursorHandler.OnKeyDownHandlerAsync" maxlength="50"></MatStringField>
</div>
</div>
</div>
@if (!string.IsNullOrEmpty(FromRoute)) {
<div class="row no-gutters justify-content-end w-100">
<div class="row no-gutters align-items-end justify-content-center" style="padding-bottom:2em">
<MatButton Class="w-100" Raised="true" @onclick="SaveUserData">@I18n["Save"]</MatButton>
<div class="row no-gutters align-items-center w-100">
<div>
<MatCheckbox @bind-Value="@saveBevorSend" Label="@I18n["SaveBevorSend"]" se></MatCheckbox>
</div>
</div>
@*<div class="row no-gutters justify-content-end w-100">
<div class="row no-gutters align-items-end justify-content-center" style="padding-bottom:2em">
<MatButton Class="w-100" Raised="true" @onclick="SaveUserData">@I18n["Save"]</MatButton>
</div>
</div>*@
<div class="row no-gutters align-items-end justify-content-center w-100" style="padding-bottom:2em">
<div class="col" style="padding-right:0.5em">
<MatButton Class="w-100" Outlined="true" @onclick="Cancel">@I18n["Cancel"]</MatButton>
@@ -107,6 +112,7 @@
private UserData Account = new();
private bool saveBevorSend = true;
private string zipCityStringValue;
private ZipCity selectedZipCity;
private ZipCity SelectedZipCity {
@@ -173,9 +179,12 @@
return String.Format("{0} {1}", I18n.GetString("Zip"), I18n.GetString("City"));
}
private void Next() {
private async void Next() {
PageHistoryManager.AddPageToHistory(NavigationManager.Uri);
try {
if (!string.IsNullOrEmpty(FromRoute) && saveBevorSend) {
await SaveUserData();
}
if ("Found".Equals(FromRoute)) {
UserDataProvider.MapReport(ReportDataProvider.Report, Account);
Validator.ValidateContact(ReportDataProvider.Report);

+ 2
- 2
Pages/CaritasServicesPage.razor View File

@@ -16,7 +16,7 @@
</MatCardContent>
</MatCard>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-2-phone mat-layout-grid-cell-span-3-tablet mat-layout-grid-cell-span-4-desktop">
@*<div class="mat-layout-grid-cell mat-layout-grid-cell-span-2-phone mat-layout-grid-cell-span-3-tablet mat-layout-grid-cell-span-4-desktop">
<MatCard class="fv-mat-card">
<MatCardContent>
<MatCardMedia Square="true" ImageUrl="./images/batch_kulturlegi.png"></MatCardMedia>
@@ -29,7 +29,7 @@
<MatCardMedia Square="true" ImageUrl="./images/batch_markt.png"></MatCardMedia>
</MatCardContent>
</MatCard>
</div>
</div>*@
</div>
</div>
</div>

+ 6
- 6
Pages/Fundvelo/CaritasServiceFundVeloFoundKeyDataPage.razor View File

@@ -145,7 +145,7 @@
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-8-tablet mat-layout-grid-cell-span-12-desktop">
<div class="mat-layout-grid-inner">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-4-desktop">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-3-tablet mat-layout-grid-cell-span-3-desktop">
<MatSelectValue Class="required" FullWidth="true" Outlined="true" Label="@I18n["Color"]" @bind-Value="selectedColor" Items="@Colors" ValueSelector="@(i=>i)"
@onkeydown="InputCursorHandler.OnKeyDownHandlerAsync">
<ItemTemplate>
@@ -159,7 +159,7 @@
</ItemTemplate>
</MatSelectValue>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-4-desktop">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-3-tablet mat-layout-grid-cell-span-3-desktop">
<div class="outlined">
<MatAutocompleteList TItem="Brand" FullWidth="true" Label="@I18n["Brand"]" Required="true" Items="@Brands" OnTextChanged="setBrandValue" @bind-Value="SelectedBrand" CustomStringSelector="@(i => i?.Bezeichnung)"
ShowClearButton="true" NumberOfElementsInPopup="6" @onkeydown="InputCursorHandler.OnKeyDownHandlerAsync">
@@ -171,7 +171,7 @@
</MatAutocompleteList>
</div>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-4-desktop">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-3-tablet mat-layout-grid-cell-span-3-desktop">
<MatSelectValue Class="required" FullWidth="true" Outlined="true" Label="@I18n["Type"]" @bind-Value="selectedBcType" Items="@BicycleTypes" ValueSelector="@(i=>i)"
@onkeydown="InputCursorHandler.OnKeyDownHandlerAsync">
<ItemTemplate>
@@ -181,16 +181,16 @@
</ItemTemplate>
</MatSelectValue>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-4-desktop">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-3-tablet mat-layout-grid-cell-span-3-desktop">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-12-desktop">
<MatStringField Class="w-100 form-check-label" Label="@I18n["FrameNumber"]" Outlined="true" type="text" @bind-Value="frameNumber"
OnKeyDown="@InputCursorHandler.OnKeyDownHandlerAsync" maxlength="20"></MatStringField>
</div>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-4-desktop">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-12-phone mat-layout-grid-cell-span-12-tablet mat-layout-grid-cell-span-12-desktop">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-12-desktop">
<MatStringField Class="w-100 form-check-label" Label="@I18n["Remark"]" Outlined="true" type="text" @bind-Value="remark"
OnKeyDown="@InputCursorHandler.OnKeyDownHandlerAsync" maxlength="1000"></MatStringField>
OnKeyDown="@InputCursorHandler.OnKeyDownHandlerAsync" maxlength="1000" rows="1" TextArea="true"></MatStringField>
</div>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-4-desktop">

+ 95
- 73
Pages/Fundvelo/CaritasServiceFundVeloLostFoundPage.razor View File

@@ -3,98 +3,120 @@
@using cwebplusApp.Shared.Services;
@using cwebplusApp.Shared.Models;
@inject IStringLocalizer<Resources> I18n
@inject NavigationManager NavigationManager
@inject PageHistoryManager PageHistoryManager
@inject ReportDataProvider ReportDataProvider
@inject UserDataProvider UserDataProvider
@inject ReportRepositoryService ReportRepositoryService
<div class="row px-3 h-100">
<div class="row no-gutters align-items-center w-100">
<div class="mat-layout-grid w-100">
<div class="mat-layout-grid-inner">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-1">
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-2">
<MatCard Class="fv-mat-card">
<MatCardContent>
<MatCardMedia Square="true" ImageUrl="./images/batch_found.png" @onclick="Found"></MatCardMedia>
</MatCardContent>
</MatCard>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-1">
</div>
<div class="row px-3 h-100">
<div class="row no-gutters align-items-center w-100">
<table class="w-100">
<tr>
<td class="text-center">
<span class="text-left" style="max-width: 100%;display:inline-block;font-size:smaller">
<p><a href="https://shop.caritas-luzern.ch/de/Velos-c75735006" target="_blank">Velos (caritas-luzern.ch)</a></p>
<p><a href="https://www.velostation.ch/de/velostationen/uebersichtskarte/luzern" target="_blank">Luzern – Forum Velostationen Schweiz</a></p>
<p><a href="https://www.nextbike.ch/de/" target="_blank">nextbike | Fahrradverleih in Luzern</a></p>
<p><a href="https://www.caritas-luzern.ch/was-wir-tun/caritas-betriebe/velomobilitaet-velodienste-velowerkstatt-veloverleih" target="_blank">Velomobilität Caritas Luzern: Velodienste, Velowerkstatt & Veloverleih (caritas-luzern.ch)</a></p>
</span>
</td>
</tr>
</table>
</div>
<div class="row no-gutters align-items-center w-100">
<div class="mat-layout-grid w-100">
<div class="mat-layout-grid-inner">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-1">
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-2">
<MatCard Class="fv-mat-card">
<MatCardContent>
<MatCardMedia Square="true" ImageUrl="./images/batch_found.png" @onclick="Found"></MatCardMedia>
</MatCardContent>
</MatCard>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-1">
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-1">
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-2">
<MatCard Class="fv-mat-card">
<MatCardContent>
<MatCardMedia Square="true" ImageUrl="./images/batch_missing.png" @onclick="Missing"></MatCardMedia>
</MatCardContent>
</MatCard>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-1">
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-1">
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-2">
<MatCard Class="fv-mat-card">
<MatCardContent>
<MatCardMedia Square="true" ImageUrl="./images/batch_missing.png" @onclick="Missing"></MatCardMedia>
</MatCardContent>
</MatCard>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-1">
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-1">
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-2" style="text-align:end">
@if (NbrPendingReports > 0) {
<div>
<MatChip Label="@NbrPendingReports.ToString()" Class="pending_batch"></MatChip>
</div>
}
<MatCard Class="fv-mat-card">
<MatCardContent>
<MatCardMedia Square="true" ImageUrl="./images/batch_pending.png" @onclick="Pending" Style="@getOpacity()"></MatCardMedia>
</MatCardContent>
</MatCard>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-1">
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-1">
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-2" style="text-align:end">
@if (NbrPendingReports > 0)
{
<div>
<MatChip Label="@NbrPendingReports.ToString()" Class="pending_batch"></MatChip>
</div>
}
<MatCard Class="fv-mat-card">
<MatCardContent>
<MatCardMedia Square="true" ImageUrl="./images/batch_pending.png" @onclick="Pending" Style="@getOpacity()"></MatCardMedia>
</MatCardContent>
</MatCard>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-1">
</div>
</div>
</div>
</div>
</div>
@code {
@code {
private int NbrPendingReports = 0;
private int NbrPendingReports = 0;
protected async override void OnInitialized() {
base.OnInitialized();
ReportDataProvider.Report = null;
ReportDataProvider.ReportRepositoryItem = null;
StateHasChanged();
NbrPendingReports = await ReportRepositoryService.GetNbrOfPendingReports();
StateHasChanged();
}
protected async override void OnInitialized()
{
base.OnInitialized();
ReportDataProvider.Report = null;
ReportDataProvider.ReportRepositoryItem = null;
StateHasChanged();
NbrPendingReports = await ReportRepositoryService.GetNbrOfPendingReports();
StateHasChanged();
}
private async void Found() {
Report report = new FoundReport();
UserDataProvider.MapReport(report, await UserDataProvider.Get());
ReportDataProvider.Report = report;
PageHistoryManager.AddPageToHistory(NavigationManager.Uri);
NavigationManager.NavigateTo("fundvelo/keydata/Found");
}
private async void Found()
{
Report report = new FoundReport();
UserDataProvider.MapReport(report, await UserDataProvider.Get());
ReportDataProvider.Report = report;
PageHistoryManager.AddPageToHistory(NavigationManager.Uri);
NavigationManager.NavigateTo("fundvelo/keydata/Found");
}
private async void Missing() {
Report report = new MissingReport();
UserDataProvider.MapReport(report, await UserDataProvider.Get());
ReportDataProvider.Report = report;
PageHistoryManager.AddPageToHistory(NavigationManager.Uri);
NavigationManager.NavigateTo("fundvelo/keydata/Missing");
}
private async void Missing()
{
Report report = new MissingReport();
UserDataProvider.MapReport(report, await UserDataProvider.Get());
ReportDataProvider.Report = report;
PageHistoryManager.AddPageToHistory(NavigationManager.Uri);
NavigationManager.NavigateTo("fundvelo/keydata/Missing");
}
private void Pending() {
if(NbrPendingReports > 0) {
NavigationManager.NavigateTo("fundvelo/pending_overview");
}
private void Pending()
{
if (NbrPendingReports > 0)
{
NavigationManager.NavigateTo("fundvelo/pending_overview");
}
}
private string getOpacity() {
return NbrPendingReports > 0 ? "opacity:1.0" : "opacity:0.5";
}
private string getOpacity()
{
return NbrPendingReports > 0 ? "opacity:1.0" : "opacity:0.5";
}
}

+ 73
- 61
Pages/Fundvelo/CaritasServiceFundVeloMissingKeyDataPage.razor View File

@@ -68,77 +68,89 @@
</MatCard>
</div>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-4-desktop">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-8-desktop">
<div class="mat-layout-grid-inner">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-8-tablet mat-layout-grid-cell-span-12-desktop">
<MatSelectValue Class="required" FullWidth="true" Outlined="true" Label="@I18n["Color"]" @bind-Value="selectedColor" Items="@Colors" ValueSelector="@(i=>i)"
@onkeydown="InputCursorHandler.OnKeyDownHandlerAsync">
<ItemTemplate>
<div>
<span class="btn-sm" style="background-color:@context.Code;
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-12-desktop">
<div class="mat-layout-grid-inner">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-8-tablet mat-layout-grid-cell-span-6-desktop">
<div class="mat-layout-grid-inner">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-8-tablet mat-layout-grid-cell-span-12-desktop">
<MatSelectValue Class="required" FullWidth="true" Outlined="true" Label="@I18n["Color"]" @bind-Value="selectedColor" Items="@Colors" ValueSelector="@(i=>i)"
@onkeydown="InputCursorHandler.OnKeyDownHandlerAsync">
<ItemTemplate>
<div>
<span class="btn-sm" style="background-color:@context.Code;
display:initial;
border:1px solid black;
box-shadow:0.2em 0.2em 0.3em 0.025em #3f4244" />
<span class="btn">@context?.Bezeichnung</span>
</div>
</ItemTemplate>
</MatSelectValue>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-8-tablet mat-layout-grid-cell-span-12-desktop">
<div class="outlined">
<MatAutocompleteList TItem="Brand" FullWidth="true" Label="@I18n["Brand"]" Items="@Brands" OnTextChanged="setBrandValue" @bind-Value="SelectedBrand" CustomStringSelector="@(i => i?.Bezeichnung)" Required="true"
@onkeydown="InputCursorHandler.OnKeyDownHandlerAsync">
<ItemTemplate>
<div>
<span>@context?.Bezeichnung</span>
<span class="btn">@context?.Bezeichnung</span>
</div>
</ItemTemplate>
</MatSelectValue>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-8-tablet mat-layout-grid-cell-span-12-desktop">
<div class="outlined">
<MatAutocompleteList TItem="Brand" FullWidth="true" Label="@I18n["Brand"]" Items="@Brands" OnTextChanged="setBrandValue" @bind-Value="SelectedBrand" CustomStringSelector="@(i => i?.Bezeichnung)" Required="true"
@onkeydown="InputCursorHandler.OnKeyDownHandlerAsync">
<ItemTemplate>
<div>
<span>@context?.Bezeichnung</span>
</div>
</ItemTemplate>
</MatAutocompleteList>
</div>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-8-tablet mat-layout-grid-cell-span-12-desktop">
<MatSelectValue Class="required" FullWidth="true" Outlined="true" Label="@I18n["Type"]" @bind-Value="selectedBcType" Items="@BicycleTypes" ValueSelector="@(i=>i)"
@onkeydown="InputCursorHandler.OnKeyDownHandlerAsync">
<ItemTemplate>
<div>
<span>@context?.Bezeichnung</span>
</div>
</ItemTemplate>
</MatSelectValue>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-8-tablet mat-layout-grid-cell-span-12-desktop">
<MatStringField Class="w-100 form-check-label" Label="@I18n["FrameNumber"]" Outlined="true" type="text" @bind-Value="frameNumber"
OnKeyDown="@InputCursorHandler.OnKeyDownHandlerAsync" maxlength="20"></MatStringField>
</div>
</ItemTemplate>
</MatAutocompleteList>
</div>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-8-tablet mat-layout-grid-cell-span-12-desktop">
<MatSelectValue Class="required" FullWidth="true" Outlined="true" Label="@I18n["Type"]" @bind-Value="selectedBcType" Items="@BicycleTypes" ValueSelector="@(i=>i)"
@onkeydown="InputCursorHandler.OnKeyDownHandlerAsync">
<ItemTemplate>
<div>
<span>@context?.Bezeichnung</span>
</div>
</ItemTemplate>
</MatSelectValue>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-8-tablet mat-layout-grid-cell-span-12-desktop">
<MatStringField Class="w-100 form-check-label" Label="@I18n["FrameNumber"]" Outlined="true" type="text" @bind-Value="frameNumber"
OnKeyDown="@InputCursorHandler.OnKeyDownHandlerAsync" maxlength="20"></MatStringField>
</div>
</div>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-8-tablet mat-layout-grid-cell-span-4-desktop">
<div class="mat-layout-grid-inner">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-12-desktop">
<MatNumericUpDownField Class="w-100" Label="@I18n["Age"]" Outlined="true" @bind-Value="@age"
OnKeyDown="@InputCursorHandler.OnConstrainedFieldKeyDownHandlerAsync" pattern="^([0-9]*)$"></MatNumericUpDownField>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-12-desktop">
<MatTextField Class="w-100 form-check-label" Label="@I18n["Price"]" Format="0.00" Outlined="true" @bind-Value="@price"
OnKeyDown="@InputCursorHandler.OnConstrainedFieldKeyDownHandlerAsync" pattern="^([0-9]+,?[0-9]*|,[0-9]+)$"></MatTextField>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-8-tablet mat-layout-grid-cell-span-12-desktop">
<MatSelectValue FullWidth="true" Outlined="true" Label="@I18n["SearchService"]" @bind-Value="selectedSearchService" Items="@SearchServices" ValueSelector="@(i=>i)"
@onkeydown="InputCursorHandler.OnKeyDownHandlerAsync">
<ItemTemplate>
<div>
<span>@context?.Bezeichnung</span>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-8-tablet mat-layout-grid-cell-span-6-desktop">
<div class="mat-layout-grid-inner">
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-12-desktop">
<MatNumericUpDownField Class="w-100" Label="@I18n["Age"]" Outlined="true" @bind-Value="@age"
OnKeyDown="@InputCursorHandler.OnConstrainedFieldKeyDownHandlerAsync" pattern="^([0-9]*)$"></MatNumericUpDownField>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-12-desktop">
<MatTextField Class="w-100 form-check-label" Label="@I18n["Price"]" Format="0.00" Outlined="true" @bind-Value="@price"
OnKeyDown="@InputCursorHandler.OnConstrainedFieldKeyDownHandlerAsync" pattern="^([0-9]+,?[0-9]*|,[0-9]+)$"></MatTextField>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-8-tablet mat-layout-grid-cell-span-12-desktop">
<MatSelectValue FullWidth="true" Outlined="true" Label="@I18n["SearchService"]" @bind-Value="selectedSearchService" Items="@SearchServices" ValueSelector="@(i=>i)"
@onkeydown="InputCursorHandler.OnKeyDownHandlerAsync">
<ItemTemplate>
<div>
<span>@context?.Bezeichnung</span>
</div>
</ItemTemplate>
</MatSelectValue>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-12-desktop">
<MatStringField Class="w-100 form-check-label" Label="@I18n["SearchServiceNbr"]" Outlined="true" type="text" @bind-Value="searchServiceNbr"
OnKeyDown="@InputCursorHandler.OnKeyDownHandlerAsync" maxlength="20"></MatStringField>
</div>
@*<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-12-desktop">
<MatStringField Class="w-100 form-check-label" Label="@I18n["Remark"]" Outlined="true" type="text" @bind-Value="remark"
OnKeyDown="@InputCursorHandler.OnKeyDownHandlerAsync" maxlength="1000" rows="2" TextArea="true"></MatStringField>
</div>*@
</div>
</ItemTemplate>
</MatSelectValue>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-12-desktop">
<MatStringField Class="w-100 form-check-label" Label="@I18n["SearchServiceNbr"]" Outlined="true" type="text" @bind-Value="searchServiceNbr"
OnKeyDown="@InputCursorHandler.OnKeyDownHandlerAsync" maxlength="20"></MatStringField>
</div>
</div>
</div>
<div class="mat-layout-grid-cell mat-layout-grid-cell-span-4-phone mat-layout-grid-cell-span-4-tablet mat-layout-grid-cell-span-12-desktop">
<MatStringField Class="w-100 form-check-label" Label="@I18n["Remark"]" Outlined="true" type="text" @bind-Value="remark"
OnKeyDown="@InputCursorHandler.OnKeyDownHandlerAsync" maxlength="1000"></MatStringField>
OnKeyDown="@InputCursorHandler.OnKeyDownHandlerAsync" maxlength="1000" rows="2" TextArea="true"></MatStringField>
</div>
</div>
</div>

+ 1
- 1
Pages/InfoPage.razor View File

@@ -19,7 +19,7 @@
<td class="text-center">
<span class="text-left" style="max-width: 500px;display:inline-block;font-size:smaller">
<pre style="white-space:pre-line;font-family:'Ubuntu';margin-bottom:0">@I18n["App.Info"]</pre>
<p><a href="https://www.kulturlegi.ch">https://www.kulturlegi.ch</a></p>
<p><a href="https://www.kulturlegi.ch" target="_blank">https://www.kulturlegi.ch</a></p>
</span>
</td>
</tr>

+ 1
- 1
Program.cs View File

@@ -44,7 +44,7 @@ namespace CaritasPWA {
config.ShowCloseButton = true;
config.ShowProgressBar = true;
config.MaximumOpacity = 100;
config.VisibleStateDuration = 5000;
config.VisibleStateDuration = 10000;
config.ShowTransitionDuration = 300;
config.HideTransitionDuration = 150;
});

+ 3
- 0
Shared/ResourceFiles/Resources.de.resx View File

@@ -474,6 +474,9 @@ Die KulturLegi wirkt dem entgegen indem sie Kultur-, Bildungs- und Sportangebote
<data name="Save" xml:space="preserve">
<value>Speichern</value>
</data>
<data name="SaveBevorSend" xml:space="preserve">
<value>Obige Angaben für weitere Meldungen speichern</value>
</data>
<data name="SearchService" xml:space="preserve">
<value>Suchdienst</value>
</data>

+ 3
- 0
Shared/ResourceFiles/Resources.fr.resx View File

@@ -474,6 +474,9 @@ La KulturLegi s'attaque à ce problème en rendant les activités culturelles,
<data name="Save" xml:space="preserve">
<value>Sauver</value>
</data>
<data name="SaveBevorSend" xml:space="preserve">
<value>Enregistrer les données ci-dessus pour d'autres messages</value>
</data>
<data name="SearchService" xml:space="preserve">
<value>Service de recherche</value>
</data>

+ 3
- 0
Shared/ResourceFiles/Resources.it.resx View File

@@ -474,6 +474,9 @@ La KulturLegi si oppone a questo rendendo le attività culturali, educative e sp
<data name="Save" xml:space="preserve">
<value>Salva</value>
</data>
<data name="SaveBevorSend" xml:space="preserve">
<value>Salva le informazioni di qui sopra per ulteriori messaggi</value>
</data>
<data name="SearchService" xml:space="preserve">
<value>Servizio ritrovamento</value>
</data>

+ 3
- 0
Shared/ResourceFiles/Resources.resx View File

@@ -474,6 +474,9 @@ The KulturLegi counteracts this by making cultural, educational and sporting act
<data name="Save" xml:space="preserve">
<value>Save</value>
</data>
<data name="SaveBevorSend" xml:space="preserve">
<value>Save the above information for further messages</value>
</data>
<data name="SearchService" xml:space="preserve">
<value>Search Service</value>
</data>

Loading…
Cancel
Save