| </div> | </div> | ||||
| <div class="row no-gutters align-items-center w-100"> | <div class="row no-gutters align-items-center w-100"> | ||||
| <div class="col-12"> | <div class="col-12"> | ||||
| <MatTextField Class="w-100" Label="@I18n["Phone"]" Outlined="true" type="text" @bind-Value="@Account.Phone" Required="true" | |||||
| <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> | </div> | ||||
| </div> | </div> | ||||
| <div class="row no-gutters align-items-center w-100"> | <div class="row no-gutters align-items-center w-100"> | ||||
| <div class="col-12"> | <div class="col-12"> | ||||
| <MatStringField Class="w-100" Label="@I18n["Mail"]" Outlined="true" type="email" @bind-Value="@Account.Email" | |||||
| <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> | </div> | ||||
| Toaster.ShowSuccess(I18n.GetString("Success.SaveUserdata.Title"), I18n.GetString("Success.SaveUserdata.Msg")); | Toaster.ShowSuccess(I18n.GetString("Success.SaveUserdata.Title"), I18n.GetString("Success.SaveUserdata.Msg")); | ||||
| NavigationManager.NavigateTo("caritas_services"); | NavigationManager.NavigateTo("caritas_services"); | ||||
| } catch (ArgumentException) { | } catch (ArgumentException) { | ||||
| Toaster.ShowSuccess(I18n.GetString("Success.SaveUserdata.Title"), I18n.GetString("Success.SaveUserdata.Msg")); | |||||
| Toaster.ShowWarning(I18n.GetString("Warning.MandatoryFields.Title"), I18n.GetString("Warning.MandatoryFields.Msg")); | Toaster.ShowWarning(I18n.GetString("Warning.MandatoryFields.Title"), I18n.GetString("Warning.MandatoryFields.Msg")); | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| private string getZipCityLbl() { | private string getZipCityLbl() { | ||||
| return String.Format("{0} {1} ({2})", I18n.GetString("Zip"), I18n.GetString("City"), I18n.GetString("PlaceOfDiscovery")); | |||||
| return String.Format("{0} {1}", I18n.GetString("Zip"), I18n.GetString("City")); | |||||
| } | } | ||||
| private void Next() { | private void Next() { |
| </div> | </div> | ||||
| <div class="row no-gutters align-items-center w-100"> | <div class="row no-gutters align-items-center w-100"> | ||||
| <div class="col-12"> | <div class="col-12"> | ||||
| <MatStringField Class="w-100" Label="@I18n["Mail"]" Outlined="true" type="text" @bind-Value="pucEmail" | |||||
| <MatStringField Class="w-100" Label="@I18n["Mail"]" Outlined="true" type="email" @bind-Value="pucEmail" Required="true" | |||||
| OnKeyDown="@InputCursorHandler.OnKeyDownHandlerAsync" maxlength="50"></MatStringField> | OnKeyDown="@InputCursorHandler.OnKeyDownHandlerAsync" maxlength="50"></MatStringField> | ||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| } | } | ||||
| private string getZipCityLbl() { | private string getZipCityLbl() { | ||||
| return String.Format("{0} {1} ({2})", I18n.GetString("Zip"), I18n.GetString("City"), I18n.GetString("PlaceOfDiscovery")); | |||||
| return String.Format("{0} {1}", I18n.GetString("Zip"), I18n.GetString("City")); | |||||
| } | } | ||||
| private void refreshGUIFromDto() { | private void refreshGUIFromDto() { |
| private string getAddressLbl() { | private string getAddressLbl() { | ||||
| return I18n.GetString("Street") + " (" + I18n.GetString("PlaceOfDiscovery") + ")"; | |||||
| return I18n.GetString("Street"); | |||||
| } | } | ||||
| private string getZipCityLbl() { | private string getZipCityLbl() { | ||||
| return String.Format("{0} {1} ({2})", I18n.GetString("Zip"), I18n.GetString("City"), I18n.GetString("PlaceOfDiscovery")); | |||||
| return String.Format("{0} {1}", I18n.GetString("Zip"), I18n.GetString("City")); | |||||
| } | } | ||||
| private async Task OnGatheringPicture(InputFileChangeEventArgs e) { | private async Task OnGatheringPicture(InputFileChangeEventArgs e) { |
| notValid += String.IsNullOrEmpty(report.AbholStrasse) ? 1 : 0; | notValid += String.IsNullOrEmpty(report.AbholStrasse) ? 1 : 0; | ||||
| notValid += String.IsNullOrEmpty(report.AbholPLZ) ? 1 : 0; | notValid += String.IsNullOrEmpty(report.AbholPLZ) ? 1 : 0; | ||||
| notValid += String.IsNullOrEmpty(report.AbholOrt) ? 1 : 0; | notValid += String.IsNullOrEmpty(report.AbholOrt) ? 1 : 0; | ||||
| notValid += String.IsNullOrEmpty(report.AbholMail) ? 1 : 0; | |||||
| if (notValid > 0) { | if (notValid > 0) { | ||||
| throw new ArgumentException("ValidationException"); | throw new ArgumentException("ValidationException"); | ||||
| } | } | ||||
| notValid += String.IsNullOrEmpty(account.Salutation) ? 1 : 0; | notValid += String.IsNullOrEmpty(account.Salutation) ? 1 : 0; | ||||
| notValid += String.IsNullOrEmpty(account.Firstname) ? 1 : 0; | notValid += String.IsNullOrEmpty(account.Firstname) ? 1 : 0; | ||||
| notValid += String.IsNullOrEmpty(account.Lastname) ? 1 : 0; | notValid += String.IsNullOrEmpty(account.Lastname) ? 1 : 0; | ||||
| notValid += String.IsNullOrEmpty(account.Phone) ? 1 : 0; | |||||
| notValid += String.IsNullOrEmpty(account.Email) ? 1 : 0; | |||||
| if (notValid > 0) { | if (notValid > 0) { | ||||
| throw new ArgumentException("ValidationException"); | throw new ArgumentException("ValidationException"); | ||||
| } | } |
| <PropertyGroup> | <PropertyGroup> | ||||
| <TargetFramework>net5.0</TargetFramework> | <TargetFramework>net5.0</TargetFramework> | ||||
| <ServiceWorkerAssetsManifest>service-worker-assets.js</ServiceWorkerAssetsManifest> | <ServiceWorkerAssetsManifest>service-worker-assets.js</ServiceWorkerAssetsManifest> | ||||
| <Version>0.9.8</Version> | |||||
| <Version>0.9.9</Version> | |||||
| </PropertyGroup> | </PropertyGroup> | ||||
| <ItemGroup> | <ItemGroup> |
| { | { | ||||
| "host_base_url": "https://integrate.dynalias.net:9443/Fundvelo/", | |||||
| //"host_base_url": "http://localhost:63733/", | |||||
| //"host_base_url": "https://vm-caritas/Fundvelo/", | //"host_base_url": "https://vm-caritas/Fundvelo/", | ||||
| "host_base_url": "https://integrate.dynalias.net:9443/Fundvelo/", | |||||
| //"host_base_url": "https://cwebplus.ch/Fundvelo/", | |||||
| "subresource_url_colors": "api/{0}/{1}/fundvelo/colors", | "subresource_url_colors": "api/{0}/{1}/fundvelo/colors", | ||||
| "subresource_url_brands": "api/{0}/{1}/fundvelo/brands", | "subresource_url_brands": "api/{0}/{1}/fundvelo/brands", | ||||
| "subresource_url_types": "api/{0}/{1}/fundvelo/types", | "subresource_url_types": "api/{0}/{1}/fundvelo/types", |
| <head> | <head> | ||||
| <title>Caritas PWA</title> | <title>Caritas PWA</title> | ||||
| <base href="/" /> | |||||
| <base href="/" /> <!--For localhost development--> | |||||
| <!--<base href="/cwebplusApp/" />--> <!--For VM-CARITAS--> | |||||
| <!--<base href="/cwebplusApp/" />--> <!--For cwebplus.ch--> | |||||
| <meta charset="utf-8" /> | <meta charset="utf-8" /> | ||||
| <meta name="description" content="Caritas PWA, developed by INTEGRATE AG, Switzerland"> | <meta name="description" content="Caritas PWA, developed by INTEGRATE AG, Switzerland"> | ||||
| <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=yes" /> | <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=yes" /> |
| // This is because caching would make development more difficult (changes would not | // This is because caching would make development more difficult (changes would not | ||||
| // be reflected on the first load after each change). | // be reflected on the first load after each change). | ||||
| const staticCacheName = 'site-static-v-0-9-8'; // IMPORTANT: CHANGE THE VERSION IN THIS NAME EVERY TIME THE APP IS DEPLOYED ON SERVER WITH CHANGES!!! | |||||
| const staticCacheName = 'site-static-v-0-9-9'; // IMPORTANT: CHANGE THE VERSION IN THIS NAME EVERY TIME THE APP IS DEPLOYED ON SERVER WITH CHANGES!!! | |||||
| const appsettings_url = 'appsettings.json'; | const appsettings_url = 'appsettings.json'; | ||||
| const assets = [ | const assets = [ | ||||
| './', | './', |